Information processing apparatus, information processing method, and program

The information processing apparatus addresses color degradation issues in color mapping by correcting conversion parameters based on color differences, ensuring accurate color mapping and reduced conversion effects.

JP2025086757APending Publication Date: 2025-06-09CANON KK
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
JP2023201023
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-11-28
Publication Date
2025-06-09

AI Technical Summary

Technical Problem

Existing color mapping technologies, such as 'Perceptual' and 'Absolute Colorimetric' mappings, can lead to color degradation and reduced saturation when converting colors from a digital document to a printing color gamut, and may not effectively reduce color conversion effects.

Method used

An information processing apparatus that acquires color information from an image, sets specific color information, and performs a color conversion process to map colors from a first color gamut to a second color gamut, with the ability to correct conversion parameters based on color differences to maintain absolute color tones and reduce color conversion effects.

Benefits of technology

The solution enables effective color mapping to a printing color gamut, reducing the degree of color conversion and maintaining absolute color tones, thereby improving color accuracy and reducing color degradation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025086757000001_ABST
    Figure 2025086757000001_ABST
Patent Text Reader

Abstract

To perform color mapping to a print color gamut so as to reduce a degree of color conversion, and to hold a color for which the absolute hue should be maintained.SOLUTION: For an image including a pixel representing color information of a first color defined by a first color gamut and a pixel representing color information of a second color defined by the first color gamut, a method converts the first color into a third color defined by a second color gamut, and converts the second color into a fourth color defined by the second color gamut. When the color difference between the third color and the fourth color becomes smaller than a predetermined threshold, if the first color is not included in a specific color, the method corrects a conversion parameter to convert a color obtained by converting the first color into a fifth color defined by the second color gamut where the color difference from the fourth color is larger than the color difference between the third color and the fourth color, and if the first color is included in the specific color, corrects the conversion parameter to convert a color obtained by converting the second color into a sixth color defined by the second color gamut where the color difference from the fourth color is larger than the color difference between the third color and the fourth color.SELECTED DRAWING: Figure 2
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

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

Background Art

[0002] There is known an information processing apparatus that receives a digital document described in a predetermined color space, performs mapping of each color in the color space to a color gamut reproducible by a printer, and outputs the result. Patent Document 1 describes "Perceptual" mapping and "Absolute Colorimetric" mapping. Patent Document 2 describes determination of whether or not to perform color space compression and the compression direction for an input color image signal.

Prior Art Documents

Patent Documents

[0003]

Patent Document 1

Patent Document 2

Summary of the Invention

Problems to be Solved by the Invention

[0004] When performing the "Perceptual" mapping described in Patent Document 1, the saturation may decrease even for colors reproducible by the printer in the color space of the digital document. Also, when performing "Absolute Colorimetric" mapping, color degradation may occur due to mapping between a plurality of colors outside the reproducible color gamut of the printer included in the digital document. Further, in Patent Document 2, since unique compression is performed in the saturation direction for the input color image signal, there remains a concern about the effect of reducing the degree of color degradation.

[0005] The present invention aims to enable color mapping to a printing color gamut so that the degree of color conversion caused by color conversion is reduced, and to maintain colors for which an absolute color tone is to be retained.

Means for Solving the Problems

[0006] In order to achieve the object of the present invention, for example, an information processing apparatus according to an embodiment includes the following configuration. That is, acquisition means for acquiring first color information from an image including a pixel representing the color information of a first color defined in a first color gamut and a pixel representing the color information of a second color defined in the first color gamut, setting means for setting second color information indicating a specific color, conversion means for executing a color conversion process of converting the first color into a third color defined in a second color gamut and converting the second color into a fourth color defined in the second color gamut for the image, and when the color difference between the third color and the fourth color is smaller than a predetermined threshold value, if the first color is not included in the specific color, correcting the conversion parameter in the color conversion process so that the color obtained by converting the first color becomes a fifth color defined in the second color gamut, the color difference between which and the fourth color is larger than the color difference between the third color and the fourth color, and if the first color is included in the specific color, correcting the conversion parameter in the color conversion process so that the color obtained by converting the second color becomes a sixth color defined in the second color gamut, the color difference between which and the fourth color is larger than the color difference between the third color and the fourth color, and first correction means.

Effects of the Invention

[0007] It is possible to perform color mapping to a printing color gamut so that the degree of color conversion caused by color conversion is reduced, and to maintain colors for which an absolute color tone is to be retained.

Brief Description of the Drawings

[0008]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Figure 7

Figure 8

Figure 9

Figure 10

Figure 11

Figure 12

Figure 13

Figure 14

Figure 15

Figure 16

Figure 17

Figure 18

Figure 19

Figure 20

[0009] Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. Note that the following embodiments do not limit the invention according to the claims. Although a plurality of features are described in the embodiments, not all of these plurality of features are essential for the invention, and the plurality of features may be arbitrarily combined. Further, in the accompanying drawings, the same or similar configurations are denoted by the same reference numerals, and redundant descriptions are omitted.

[0010] [Embodiment 1] Terms used in this specification are defined in advance as follows.

[0011] [Color Reproduction Range] The color reproduction range according to this embodiment refers to the range of reproducible colors in an arbitrary color space. Hereinafter, the color reproduction range is also referred to as a color reproduction range, a color gamut, or a gamut. As an index indicating the size of this color reproduction range, there is a gamut volume. The gamut volume is the three-dimensional volume in an arbitrary color space.

[0012] It is conceivable that the chromaticity points constituting the color reproduction range are discrete. For example, it is conceivable that a specific color reproduction range is represented by 729 points on CIE-L*a*b*, and for the points in between, a known interpolation operation such as tetrahedral interpolation or cubic interpolation is used to obtain them. In such a case, as the corresponding gamut volume, corresponding to the interpolation operation method, the volume on CIE-L*a*b* such as a tetrahedron or a cube constituting the color reproduction range can be obtained and accumulated.

[0013] For the color reproduction range and color gamut according to this embodiment, an example using the color reproduction range in the CIE-L*a*b* space will be described. However, if the same processing is possible, it is not particularly limited in this way, and different color reproduction ranges may be used. Similarly, the numerical values of the color reproduction range according to this embodiment indicate the volume calculated cumulatively in the CIE-L*a*b* space on the premise of tetrahedral interpolation, but it is not particularly limited in this way.

[0014] [Gamma Mapping] The gamma mapping according to this embodiment is a process of converting a color in a certain color gamut into a color in a different color gamut. For example, mapping a color in an input color gamut to an output color gamut is called gamma mapping, and conversion within the same color gamut is not called gamma mapping. In gamma mapping, maps such as Perceptual, Saturation, or Colorimetric of an ICC profile may be used. Hereinafter, when simply denoted as "mapping process", it shall refer to the mapping process in gamma mapping.

[0015] The mapping process may convert one 3DLUT (Look-Up Table). Also, the mapping process may be performed after color space conversion to a standard color space. For example, when the input color space is sRGB, the input color may be converted into a color on the CIE-L*a*b* color space, and the mapping process may be performed on the output color gamut on the CIE-L*a*b* color space. This mapping process may be a 3DLUT process or a process using a conversion formula. Also, the mapping process and the conversion process from the input color space to the output color space at the time of output may be performed simultaneously. For example, at the time of input, it may be the sRGB color space, and at the time of output, it may be converted into RGB values or CMYK values specific to the image forming apparatus.

[0016] [Original Document Data] The original document data according to this embodiment refers to the entire input digital data to be processed, and is assumed to be composed of one page to a plurality of pages. The single-page original document data may be held as image data or expressed as a drawing command. When the original document data is expressed as a drawing command, rendering may be performed and the data may be converted into image data before being processed. The image data is composed of a plurality of pixels arranged two-dimensionally. Each pixel holds information representing a color in a color space. Examples of the information representing a color include RGB values, CMYK values, K values, CIE-L*a*b* values, HSV values, or HLS values.

[0017] [Reduction of color difference, color fade] In the present embodiment, for any two colors, when performing gamma mapping, the fact that the distance between the colors after mapping in a predetermined color space is smaller than the distance between the colors before mapping is simply expressed as "reduction of color difference". When reduction of color difference occurs, it is conceivable that due to the reduction of the color difference after mapping, what was recognized as different colors before mapping is recognized as the same color after mapping. In the following, the occurrence of reduction of color difference and the fact that the color difference after conversion is less than a predetermined threshold are referred to as "color fade". The threshold used here will be described later.

[0018] Hereinafter, a specific example of color fade will be given and described. Here, it is assumed that there are color A and color B in a digital manuscript, and by mapping these to the color gamut of a printer, color A is converted to color C and color B is converted to color D. In this case, the state where the distance between color C and color D is smaller than the distance between color A and color B and the color difference between color C and color D is less than a predetermined threshold is defined as color fade. When color fade occurs, colors that were recognized as different in the digital manuscript are recognized as the same color when printed. For example, when printing a graph that makes different items recognizable by using different colors, if different colors are recognized as the same color due to color fade, there is a possibility of being misrecognized as the same item even though they are different items.

[0019] In the present 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 colorimetric system color space, xyY colorimetric system color space, HSV color space, or HLS color space, etc. may be used when calculating the color difference.

[0020] [Information processing apparatus] FIG. 1 is a block diagram showing an example of the configuration of an information processing apparatus and an image forming apparatus according to the present embodiment. In the present 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, and executes various processes by reading a program stored in the storage medium 104 such as an HDD or a ROM into the RAM 103 as a work area. For example, the CPU 102 acquires a command based on a user input acquired via an HID (Human Interface Device) I / F (not shown). Then, the CPU 102 executes various processes according to the acquired command or a program stored in the storage medium 104. Further, the CPU 102 performs predetermined processing on the document data acquired via the transfer I / F 106 according to a program stored in the storage medium 104. Then, the CPU 102 displays the result of such processing and various information on a display (not shown) and transmits it 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 necessary for information processing to a predetermined address in the RAM 103. After reading the above parameters and data, the accelerator 105 executes information processing on the data. The accelerator 105 according to the present embodiment is not an essential element, and the CPU 102 may execute equivalent processing. Specifically, the accelerator is a GPU or a dedicated electrical circuit. The above parameters may be stored in the storage medium 104 or acquired from the outside via the transfer I / F 106.

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

[0024] The CPU 111 is a central processing unit, and comprehensively controls the image forming apparatus 108 by reading out a program stored in the storage medium 113 into the RAM 112 as a work area and executing it. The accelerator 109 is hardware that can execute information processing faster than the CPU 111. The accelerator 109 is activated by the CPU 111 writing parameters and data necessary for information processing to a predetermined address in the RAM 112. After reading the above parameters and data, the accelerator 109 executes information processing on the data. The accelerator 109 according to the present embodiment is not an essential element, and the CPU 111 may execute equivalent processing. The above parameters may be stored in the storage medium 113 or in a storage (not shown) such as a flash memory or an HDD.

[0025] Here, the information processing performed by the CPU 111 or the accelerator 109 will be described. The information processing performed by the CPU 111 or the accelerator 109 according to the present embodiment is, for example, a process of generating data indicating the dot formation position of ink in each scan by the recording head 115 based on the acquired print data.

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

[0027] The information processing apparatus 101 according to the present embodiment converts a color represented in a first color gamut included in the input image data into a color represented in a second color gamut. Hereinafter, when simply referred to as "color conversion process", it refers to the color conversion process between color gamuts performed by such an information processing apparatus 101. In the present embodiment, by the color conversion process performed by the information processing apparatus 101, the input image data is converted into data (ink data) indicating the color and density of ink for each pixel to be printed by the image forming apparatus 108.

[0028] For example, the acquired print data includes image data indicating an image. When the image data is data indicating an image in a color space coordinate (here, sRGB) which is the display color of a monitor, the data indicating the image with the color coordinates (R, G, B) is converted into ink data (here, CMYK) handled by the image forming apparatus 108 by the color conversion process. The color conversion method according to the present embodiment is realized by a known conversion process such as matrix operation processing, three-dimensional LUT or four-dimensional LUT processing.

[0029] The image forming apparatus 108 according to this embodiment uses, as an example, inks of black (K), cyan (C), magenta (M), and yellow (Y). Therefore, the image data of the RGB signal is converted into image data composed of color signals of 8 bits each for K, C, M, and Y. The color signal of each color corresponds to the amount of application of each ink. Also, the case where the number of ink colors used is 4 colors of K, C, M, and Y will be described as an example, but for the purpose of improving image quality, other ink colors such as light cyan (Lc), light magenta (Lm), or gray (Gy) inks with low density may be used. In that case, an ink signal corresponding to that color is generated.

[0030] After the color conversion process, the information processing apparatus 101 performs quantization processing on the ink data. The quantization processing according to this embodiment is a process of reducing the number of gradation levels of the ink data. The information processing apparatus 101 according to this embodiment performs quantization using a dither matrix in which thresholds for comparing with the values of the ink data are arranged for each pixel. Through the quantization process, finally, binary data indicating whether to form dots or not at each dot formation position is generated.

[0031] After the binary data for printing is generated, the binary data is transferred to the recording head 115 by the recording head controller 114. At the same time, the CPU 111 performs printing control so as to operate the carriage motor that operates the recording head 115 via the recording head controller 114, and further operate the conveyance motor that conveys the printing medium. The recording head 115 scans the printing medium and forms an image by discharging ink droplets onto the printing medium at the same time.

[0032] The information processing apparatus 101 and the image forming apparatus 108 are connected via a communication line 107. In the present embodiment, a local area network is used as the communication line 107, but it is not particularly limited as long as the information processing apparatus 101 and the image forming apparatus 108 can be communicably connected. 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] Hereinafter, the recording head 115 will be described as having recording nozzle arrays for four colors of cyan (C), magenta (M), yellow (Y), and black (K). FIG. 14 is a diagram for explaining the recording head 115 according to the present embodiment. In the image forming process according to the present embodiment, an image is formed by performing a plurality of N scans on a unit area corresponding to one nozzle array.

[0034] The recording head 115 includes a carriage 116, nozzle arrays 115k, 115c, 115m, and 115y, and an optical sensor 118. The carriage 116 on which the four nozzle arrays 115k, 115c, 115m, and 115y and the optical sensor 118 are mounted can reciprocate 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 relative to the print medium in the X direction, ink droplets are ejected from each nozzle of the nozzle array in the gravitational direction (the -Z direction in the figure) based on the recording data. Thereby, an image corresponding to 1 / N of the main scan is formed on the print medium placed on the platen 119. When one main scan is completed, the print medium is conveyed along the conveyance direction (the -y direction in the figure) intersecting the main scanning direction by a distance corresponding to the width of 1 / N of the main scan. By repeating these operations alternately, an image having a width corresponding to one nozzle array is formed by a plurality of N scans. By alternately repeating such main scanning and conveyance operations, an image is gradually formed on the print medium. By doing so, it is possible to control so as to complete the image formation for a predetermined area.

[0035] When printing is executed, there are cases where the object to be printed contains colors for which it is desired to maintain an absolute hue. For example, when printing something like a corporate color, where the color itself evokes the company, the absolute hue of that color is important, so it is considered that print data should be created so that such colors are retained as much as possible.

[0036] From such a perspective, when the input image contains a specific color (absolute color) for which such an absolute hue is set to be important, the information processing apparatus 101 according to the present embodiment can correct the conversion parameters in the color conversion process so that the color after conversion of such an absolute color is not changed when performing the color conversion process by gamma mapping.

[0037] FIG. 2 is a flowchart showing an example of the overall processing performed by the information processing apparatus 101 according to the present embodiment. The information processing apparatus 101 according to the present embodiment can reduce the degree of color degradation by increasing the distance between colors in the color space after color conversion for a combination of colors that causes color degradation by color conversion. In particular, for the first color and the second color that cause color degradation by color conversion, when the first color contains the above-described absolute color, the information processing apparatus 101 according to the present embodiment does not change the color after conversion of the first color, and changes the color after conversion of the second color, and reduces the degree of color degradation by increasing the distance between colors in the color space after color conversion. The processing in FIG. 2 is realized, for example, by the CPU 102 reading out the program stored in the storage medium 104 to the RAM 103 and executing it. Further, the processing in FIG. 2 may be executed by the accelerator 105. The processing in FIG. 2 is assumed to be executed in response to the input of image data.

[0038] In S101, the CPU 102 acquires the original data used for printing. In this embodiment, it is assumed that the original data stored in the storage medium 104 is acquired, but the original data may be input from an external device via the transfer I / F 106. Next, the CPU 102 acquires the image data including the color information from the acquired original data. The CPU 102 according to this embodiment acquires the value representing the color expressed in a predetermined color space included in the image data. As the value representing the color, for example, sRGB data, Adobe RGB data, CIE-L*a*b* data, CIE-LUV data, XYZ colorimetric system data, xyY colorimetric system data, HSV data, or HLS data is used.

[0039] Note that the original data used here acquires, as the original data, an image including pixels containing color information of a first color and pixels containing color information of a second color, and acquires the color information of such an image. Hereinafter, such a first color and a second color are used as unique colors (here, color 403 and color 404) to be described later with reference to FIG. 4 and the like in each process, but the colors used in the process are not limited to these two, and three or more colors may be used.

[0040] In S102, the CPU 102 determines whether or not the color of one pixel that has not yet been processed in the original data acquired in S101 is included in the predetermined color information (is the predetermined color). If it is included, the process proceeds to 104, and if not, the process proceeds to S103.

[0041] In S103, the CPU 102 performs color conversion on the pixel to be processed using the conversion parameters stored in the storage medium 104 in advance, sets the value after the color conversion as the value after gamma mapping of the pixel to be processed, and advances the process to S105. The conversion parameters in this embodiment are a gamma mapping table, and gamma mapping using the gamma mapping table is performed on the color information of each pixel of the image data as the color conversion process. The image data after gamma mapping is stored in the RAM 103 or the storage medium 104.

[0042] The CPU 102 according to this embodiment uses a three-dimensional look-up table as a gamma mapping table. The CPU 102 can calculate a combination of output pixel values (Rout, Gout, Bout) by gamma mapping for a combination of input pixel values (Rin, Gin, Bin) with reference to the gamma mapping table. When the input values Rin, Gin, and Bin each have 256 gradations, as the gamma mapping table, a table Table1

[0256]

[0256]

[0256] [3] having a total of 16,777,216 sets of output values can be used. The color conversion process may be realized, for example, by performing the processes shown in the following formulas (1) to (3) on the RGB pixel values of the pixels to be processed in S102. Rout = Table1[Rin][Gin][Bin][0] ··· (Formula 1) Gout = Table1[Rin][Gin][Bin][1] ··· (Formula 2) Bout = Table1[Rin][Gin][Bin][2] ··· (Formula 3)

[0043] Note that the number of grids in the gamma mapping table is not limited to 256 grids. For example, the number of grids may be reduced from 256 grids (for example, to 16 grids) so that the table values of a plurality of grids are stored and the output value is determined. Known processes performed when using the LUT table, such as reducing the table size in this way, may be arbitrarily additionally executed.

[0044] In S104, the CPU 102 performs color conversion on the pixel to be processed by absolute gamma mapping, sets the value after the color conversion as the value after gamma mapping of the pixel to be processed, and proceeds with the process to S105. The absolute gamma mapping according to this embodiment is gamma mapping in a form that retains predetermined color information as much as possible. Here, the absolute gamma mapping is a process of making the part of the output that can match the color represented by the sRGB pixel value of the input color match, and mapping the pixel values outside the printable color gamut that cannot match colorimetrically to the closest color within the printable color gamut. The specific configuration and processing method as the table of the absolute gamma mapping table are common to the example of the gamma mapping table described in S103, and the difference between them is the table value. When the process of S104 is completed, the process proceeds to S105.

[0045] In S105, the CPU 102 determines whether all the pixels of the image have been set as the processing target in S102. If all the pixels are the processing target, the process proceeds to S106, and if not, the process also proceeds to S106.

[0046] In S106, the CPU 102 creates a table after color degradation correction based on the image data input in S101 and the values after gamma mapping of each pixel set in S103 and S104. The format of the table after color degradation correction is the same as the format of the gamma mapping table. The process performed in S106 and the table after color degradation correction will be described later with reference to FIGS. 3 and 4.

[0047] In S107, the CPU 102 uses the table after color degradation correction created in S106 with the image data input in S101 as the input to generate image data after color degradation correction for which color degradation correction has been performed. The generated image data after color degradation correction is stored in the RAM 103 or the storage medium 104. When S107 is completed, the process proceeds to S108.

[0048] In S108, the CPU 102 outputs the image data after color degradation correction stored in S107 from the information processing apparatus 101 via the transfer I / F 106, and ends the process of FIG. 2. Note that the color conversion process in the gamma mapping and the absolute gamma mapping may be mapping from the color in the sRGB color space to the color in the color reproduction color gamut of printing by the image forming apparatus 108. According to such a process, it is possible to suppress a decrease in saturation and color difference due to gamma mapping within the color reproduction color gamut of the image forming apparatus 108. Also, in the gamma mapping, parameter selection that emphasizes gradation reproduction may be made.

[0049] Hereinafter, with reference to FIG. 3, the table after color degradation correction created in S106 will be described. FIG. 3 is a flowchart showing an example of the process for creating the table after color degradation correction in S106. The process of FIG. 3 is realized, for example, by the CPU 102 reading out the program stored in the storage medium 104 to the RAM 103 and executing it. Also, the process of FIG. 3 may be executed by the accelerator 105.

[0050] In S201, the CPU 102 detects all the unique colors of the image data input in S101. Here, the unique color refers to the color detected from the image data, and those with different pixel values are detected as different unique colors. Here, the detection result of the unique color is stored as a unique color list in the RAM 103 or the storage medium 104. The unique color is assumed to be specified by components such as RGB, but one unique color may have a width for each component of RGB, 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 repeatedly performs the detection process of the unique color for each pixel of the image data, and determines whether the color of each pixel is different from the unique colors detected so far for all the pixels included in the image data. By such a process, the color determined to be a unique color is stored as a unique color in the unique color list.

[0051] When the input image data is in sRGB, since it has 256 gradations each, there are unique colors among a total of 16,777,216 colors of 256×256×256. If all these colors are detected as unique colors and stored in the unique color list, the number of colors becomes enormous and the processing speed decreases. From such a perspective, the CPU 102 may perform the detection of unique colors discretely. For example, the CPU 102 may perform the detection of unique colors after reducing the 256 gradations to 16 gradations. In such a case, the CPU 102 may group 16 adjacent colors out of the 256-gradation colors into 16 gradations. According to such a color reduction process, it is possible to detect unique colors from a total of 4096 colors of 16x16x16, thereby making it possible to improve the processing speed.

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

[0053] When the color difference 408 between color 405 and color 406 is smaller than a predetermined threshold, the CPU 102 according to this embodiment determines that color degradation has occurred. Here, in addition to the color difference 408 between color 405 and color 406 being smaller than the predetermined threshold, it is determined that color degradation has occurred when the color difference 408 is smaller than the color difference 407 between color 403 and color 404. The threshold used here can be arbitrarily set according to the conditions desired by the user. This threshold may be a fixed value or a value that varies depending on the color combination. For example, the CPU 102 may use the color difference before conversion of the combined colors (here, the color difference 407 between color 403 and color 404) as the above-mentioned predetermined threshold. The CPU 102 repeats such determination processing for all color combinations in the unique color list.

[0054] In this embodiment, the color difference between two colors is calculated as the Euclidean distance in the color space. Since 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, people tend to perceive that the colors are approaching when the Euclidean distance in the CIE-L*a*b* color space becomes smaller, and that the colors are separating when it becomes larger. Hereinafter, the case of using the Euclidean distance (hereinafter referred to as color difference ΔE) in the CIE-L*a*b* color space as the color difference will be described. The color information in the CIE-L*a*b* color space is represented by a three-axis color space of L*, a*, and b* respectively. 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. When the input image data is represented in another color space, it may be converted to the CIE-L*a*b* color space by known color space conversion techniques, or subsequent processing may be performed in that color space as it is. The calculation formulas for color difference ΔE407 and color difference ΔE408 are as follows.

Equation

[0055] The CPU 102 determines that color degradation occurs when the color difference ΔE408 is less than the threshold value. Based on the determination of the color difference of a person, if the converted color difference ΔE408 can distinguish different colors, it can be determined that color degradation does not occur and there is no need to correct the color difference. From this perspective, the threshold value used here can be, for example, 2.0. Also, as described above, this threshold value may be the same as ΔE407. Further, the CPU 102 may determine that color degradation occurs when the color difference ΔE408 is less than 2.0 and the color difference ΔE408 is less than the color difference ΔE407.

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

[0057] Here, it has been described that when the number of colors determined to cause color degradation is zero, it is determined that the image does not require color degradation correction. However, the processing is not particularly limited in this way. For example, the CPU 102 may determine whether the image does not require color degradation correction based on the number of color combinations that cause color degradation with respect to the total number of combinations of unique colors. In that case, the CPU 102 may determine that the image requires color degradation correction when, for example, the number of color combinations that cause color degradation is more than half of the total number of combinations of unique colors. According to such processing, the setting can be made to execute color degradation correction only when it can be determined that color degradation correction is more necessary.

[0058] In S205, the CPU 102 performs color degradation correction on the color combinations that cause color degradation based on the input image data and the table after degradation correction.

[0059] In FIG. 4, since both color 403 and color 404 are shown as non-absolute colors, all of the colors 405, 406, and 410 after conversion are different from the colors before conversion. In the present embodiment, assuming that either color 403 or color 404 is an absolute color, color conversion processing is performed on the absolute color by the above-described absolute gamut mapping, and the color after conversion of the other color is determined so that color degradation is reduced with respect to the color after the color conversion.

[0060] The color degradation correction performed by the CPU 102 according to the present embodiment will be described in detail with reference to FIG. 4. First, the color degradation correction performed when neither color 403 nor color 404 is an absolute color will be described. In FIG. 4, it is determined that color degradation occurs in the color combination of color 403 and color 404. Therefore, the CPU 102 according to the present embodiment corrects the conversion parameters used in the color conversion process so that the color difference after color conversion between color 403 and color 404 becomes larger. That is, the CPU 102 can correct the conversion parameters so as to increase the color distance on a predetermined color space after color conversion. By such correction, the degree of color degradation can be reduced. Here, the CPU 102 sets a color distance (discriminable color distance) that can be recognized as different colors based on human visual characteristics, and corrects the conversion parameters of the color conversion process so that the color difference after conversion of two colors becomes such a color distance.

[0061] Here, the CPU 102 sets the above-described discriminable color distance as a color distance where the color difference ΔE is 2.0 or more. Also, the conversion parameters may be corrected so that the color difference after conversion of two colors is approximately the same as the color difference Δ407 between the colors 403 and 404 before conversion.

[0062] The color fading correction process is repeated for all combinations of colors that cause color fading. The results of the color fading correction for the number of color combinations are stored in a table in association with the color information before correction and the color information after correction in S206 described later, and the table with the corresponding parameters corrected in this way is used as the color fading correction table. In the example shown in FIG. 4, the color information is represented by the color information in the CIE-L*a*b* color space. Therefore, the CPU 102 may store the color information to be stored in the color fading correction table after converting it into the color in the color space of the input image data and the image data at the time of output. In that case, the color information before correction is converted into the color information in the color space of the input image data, and the color information after correction is converted into the color information in the color space of the output image data, and then stored in the color fading correction table.

[0063] Next, the process of such color fading correction will be described in detail. The CPU 102 obtains a color difference correction amount 409 required to be a distinguishable color interval distance with respect to the converted color difference ΔE408. In the present embodiment, the distinguishable color interval distance is set to a color difference ΔE of 2.0, and the difference between such a value 2.0 and the color difference ΔE408 is calculated as the color difference correction amount 409. Further, the CPU 102 may calculate the color difference correction amount 409 as the difference between the color difference ΔE407 and the color difference ΔE408.

[0064] In FIG. 4, a color obtained by correcting color 405 by color difference correction amount 409 on the extension line from color 406 to color 405 in the CIE-L*a*b* color space is shown as color 410. In the present embodiment, as described above, color 410 calculated by the color conversion process after color degradation correction is described as a color existing on the extension line from color 406 to color 405. However, if the color difference from color 406 to color 410 is equal to or greater than the total value of color difference ΔE408 and color difference correction amount 409, it is not particularly limited in this way. For example, color 410 may be a color at a position separated by a distance equal to the total value of color difference ΔE408 and color difference correction amount 409 in any direction of the lightness direction, chroma direction, or hue angle direction from color 406 in the CIE-L*a*b* color space. Also, color 410 may be a color separated by the total value of color difference ΔE408 from color 406 in consideration of not only one direction but also the lightness direction, chroma direction, and hue angle direction.

[0065] In the example of FIG. 4, the color conversion parameters were corrected so that the color after conversion of color 403 changed from color 405 to color 410. However, if the color difference between the two colors after conversion is the discriminable color distance as described above, for example, the color after conversion of color 404 may be made different from color 405, or the colors after conversion of both color 403 and color 404 may be made different from the colors before correction. In the example of FIG. 4, when attempting to correct color 406 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 go outside gamut 402 and such correction could not be performed. Therefore, when changing the color after conversion of color 404 by correcting the conversion parameters, the color is set on the boundary surface of gamut 402 and the color distance from color 405 is the discriminable color distance. Here, if only changing the color after conversion of color 404 does not reach the discriminable color distance between the two colors after conversion, the shortage to the discriminable color distance may be compensated by correcting the conversion parameters so as to change the color after conversion of color 403.

[0066] Next, a description will be given of the color degradation correction performed when either one of color 403 and color 404 is an absolute color. In the following, it will be described assuming that color 403 is an absolute color and color 404 is not an absolute color. Here, as in the above example, since it is determined that color degradation occurs in the color combination of color 403 and color 404, the conversion parameters used in the color conversion process are corrected so that the color difference after the color conversion between color 403 and color 404 becomes larger.

[0067] In the example shown in FIG. 4, it was described that color degradation correction is performed such that the color 405 after the conversion of color 403 becomes color 410. On the other hand, when color 403 is an absolute color, the CPU 102 according to the present embodiment performs color degradation correction so that the color difference after the conversion of the two colors becomes a distinguishable color distance by not changing the color after the conversion of color 403 and changing the color after the conversion of color 404. Here, the absolute color 403 has been converted by absolute gamma mapping (S104), and the color after such conversion is maintained without being changed.

[0068] The color degradation correction according to the present embodiment is performed in the same manner as the example of FIG. 4 described above, except that the color after the conversion of the absolute color (color 403) is not changed. Here, "not changing the color after the conversion" is not limited to a process of not changing the color at all, and may include a process of performing a change in a predetermined range of colors set as a range in which the color is recognized as not being changed. For example, a case where the color difference after the conversion is equal to or less than a predetermined threshold value (for example, the color difference ΔE is 0.01 or less) may be set as a range in which the color is recognized as not being changed.

[0069] According to such a process, it becomes possible to perform color degradation correction while maintaining the absolute color set as being important in terms of absolute color tone. Therefore, even for a color that has a sufficient color difference at the time of input image data but color degradation occurs after gamma mapping and one of them is an absolute color, it is possible to reduce the color degradation while maintaining the absolute color (while preventing an unexpected color change for the user).

[0070] In S206, the CPU 102 corrects the gamma mapping table using the result of the color degradation correction in S205 to obtain a post - degradation correction table. Here, the post - degradation correction table has, for the colors for which absolute gamma mapping was performed in S104, the converted colors as they are as outputs, and for other colors, the colors after color degradation correction calculated in S205 as outputs. That is, the CPU 102 corrects the gamma mapping table so that the output when a non - absolute color is input becomes the color after color degradation correction calculated in S205. The correction of the gamma mapping table is repeatedly executed for all combinations of colors in which color degradation occurs. Through such processing, a post - degradation correction table is created.

[0071] According to the process shown in FIG. 3, after creating a post - degradation correction table and performing conversion of the input image using such a table, for combinations of unique colors in the input image, it is possible to increase the distance between colors for combinations of colors that will cause color degradation after conversion. Therefore, it is possible to reduce the degree of color degradation in combinations of colors that cause color degradation due to conversion.

[0072] When the input image data is sRGB data, the gamma mapping table is created on the premise that the input image data has 16,777,216 colors. The gamma mapping table created on this premise is created considering color degradation and chroma for all colors not included in the actual input image data. According to the process shown in this embodiment, by correcting the conversion parameters only for the colors detected in the input image data that will cause color degradation after conversion, it is possible to create an adaptive post - degradation correction table for the input image data. Therefore, it is possible to execute color conversion processing with reduced color degradation degree by performing gamma mapping suitable for the input image data.

[0073] In the present embodiment, the processing in the case where the input image data is a single-page image has been described. However, the number of pages of the input image data is not particularly limited. When the input image data has multiple pages, the flow shown in FIG. 2 may be performed for all pages, or may be performed for each page. According to such processing, even when the input image data has multiple pages, it is possible to similarly maintain the conversion result of the absolute color and reduce the degree of color degradation when color degradation occurs.

[0074] Also, in the present embodiment, the degenerate correction table is created by correcting the gamma mapping table. However, as long as the color difference after conversion is the same value, it is not particularly limited to such processing. For example, the gamma mapping table before color degradation correction may be directly used for the image data after gamma mapping, and further color conversion may be performed using a different gamma mapping table, and the same conversion may be performed. In that case, in S205, a table for converting from the color information converted by the gamma mapping data before correction to the color information after color degradation correction is created as the gamma mapping post-correction table. The gamma mapping post-correction table generated here is a table for converting the color 405 in FIG. 4 as the input to the color 410. In this case, in S107, the color conversion process is executed by applying the gamma mapping post-correction table to the image data after gamma mapping.

[0075] Also, in this embodiment, the processes shown in FIGS. 2 and 3 are assumed to start automatically in response to receiving input of image data, but they may be configured to be executed based on a user instruction. For example, the CPU 102 may be configured to receive a user input as to whether to execute each information process according to this embodiment on a UI screen as shown in FIG. 15 described later. On the UI screen of FIG. 15, a toggle button for selecting the type of color correction is displayed. Also, on the UI screen of FIG. 15, a toggle button for selecting whether to execute gamma mapping using an adaptive degeneracy correction table by ON and OFF is displayed. According to such a configuration, it is possible to switch whether to execute adaptive gamma mapping according to a user's instruction. As a result, when the user wants to reduce the degree of color degeneracy, adaptive gamma mapping can be executed.

[0076] Hereinafter, with reference to FIGS. 15 to 17, a method for setting an absolute color by the CPU 102 according to this embodiment will be described. The CPU 102 according to this embodiment sets an absolute color based on a user input. For this purpose, the CPU 102 may receive an input of information indicating a color by the user (for example, values of each element of RGB) and set the input values as the absolute color.

[0077] In FIG. 15, an "absolute color setting" button is displayed. When this button is pressed, it is determined that the user wants to retain the absolute color tone of the object to be printed, and a UI for setting the absolute color (here, the absolute color setting dialog 1601 shown in FIG. 16) is displayed. The "color correction setting" button in FIG. 15 will be described later.

[0078] FIG. 16 is a diagram showing a dialog for setting an absolute color. The absolute color set here is used in the determination in S102. In the absolute color setting dialog 1601, an absolute color information list display section 1602 and a registration / delete dialog 1603 are displayed.

[0079] In the absolute color information list display section 1602, an absolute color information list storing information indicating registered absolute colors is displayed. The absolute color information list stores, as information indicating absolute colors, a color name and absolute color values (R value, G value, and B value). In the example shown in FIG. 16, two colors, C red (R value = R01, G value = G01, B value = B01) and F green (R value = R01, G value = G01, B value = B01), are registered.

[0080] Also, in the absolute color setting dialog 1601, there is an "absolute color retention" (ON / OFF) setting for selecting whether to retain registered absolute colors during printing. In the example shown in FIG. 16, the setting state is such that C red is retained (ON) and F green is not retained (OFF).

[0081] The registration / deletion dialog 1603 is used to set absolute colors. The CPU 102 according to the present embodiment sets the input color as an absolute color when information indicating a color is input to the registration / deletion dialog 1603 by the user and the registration button is further pressed. In the present embodiment, a "registration" button for registering the third color of the absolute colors is displayed within the color name item on the absolute color information list display section 1602, and the registration / deletion dialog 1603 is displayed when the registration button is pressed. In FIGS. 16 to 18, a black-filled square (■) indicates a pressed button, and a white-filled square (□) indicates a button that can be pressed and is not pressed.

[0082] In the registration / deletion dialog 1603, a color name, absolute color values (R value, G value, B value), and input fields are displayed. When the user inputs information into this field and presses the "registration" button at the left end, a new absolute color is set. Here, when the "deletion" button is pressed, a new absolute color is not set.

[0083] Note that the registration / deletion dialog 1603 may be used to change or delete the information of already registered absolute colors. For example, when an already registered absolute color is selected in the absolute color information list display section 1602 (for example, when the inside of the color name frame is pressed), the information of the absolute color corresponding to the registration / deletion dialog 1603 may be displayed. In that case, after the user edits the information displayed in the registration / deletion dialog 1603 and the "Register" button is pressed, the information of the absolute color is updated, and when the "Delete" button is pressed, the information of the already registered absolute color is deleted from the absolute color information list.

[0084] Note that here, the description has been given assuming that the RGB pixel values of the color are used as the information indicating the color. However, this input is not particularly limited as long as it can specify a color. For example, as the information indicating the color, information specifying the range of RGB pixel values may be input. Also, for example, as the information indicating the color, the type (name) of the color may be input, and the RGB value corresponding to the color may be read from the storage medium 104.

[0085] FIG. 17 is a diagram for explaining an example of setting whether to hold already registered absolute colors during printing. In FIG. 17, an absolute color setting dialog 1701 having the same function as the absolute color setting dialog 1601 is displayed, and an absolute color information list display section 1702 having the same function as the absolute color information list display section 1602 is displayed at the upper part.

[0086] In FIG. 17, the absolute color setting dialog 1701 displays a selection dialog 1703. In the selection dialog 1703, the CPU 102 receives a user input on whether to hold the corresponding absolute color, and when a input to hold is received, sets to hold the absolute color during printing. In the example of FIG. 17, in response to the "Absolute Color Setting" button for the second registered F green being pressed, the selection dialog 1703 is displayed, and the ON / OFF of "Absolute Color Setting" is set according to the ON / OFF selection in the selection dialog 1703.

[0087] According to such a configuration, while maintaining the conversion result of the absolute color, it is possible to reduce the degree of color degradation when color degradation occurs. Therefore, it is possible to select a color conversion process according to the priorities of the user in printing. In particular, when the absolute color is set as shown in FIGS. 16 to 17, in S102, it is determined whether each pixel of the original data contains the set absolute color, and different gamma mappings are performed according to the result of the determination, and color degradation correction is performed.

[0088] In the examples of FIGS. 16 and 17, since the color held as the absolute color is only "C red", in S102, it is determined whether the original data contains the color of C red. Also, here, when it is set to hold F green as the absolute color in addition to C red, in S102, it is determined whether the original data contains either C red or F green. Also, when there is no absolute color set to be held, the process proceeds to S103 regardless of the result of the determination in S102.

[0089] According to such a configuration, it is possible to set an absolute color assuming that the absolute color tone is important, and while maintaining the conversion result of the set absolute color, it is possible to reduce the degree of color degradation when color degradation occurs.

[0090] [Embodiment 2] [Correction of Repulsion Force within the Same Hue] The information processing apparatus 101 according to Embodiment 1 detected the number of color combinations in which color degradation occurs for all combinations of unique colors included in the image data, and performed color degradation correction processing for each of them. On the other hand, there may be cases where it is considered that color degradation does not occur without even determining whether color degradation occurs, such as combinations of colors with greatly different hues. Therefore, the information processing apparatus 101 according to Embodiment 2 groups a part corresponding to the hue range among the detected plurality of unique colors as one color group, and performs color degradation correction processing within the group. Hereinafter, when simply referred to as a "group", it refers to a grouping of unique colors as one color group in this way. Also, in the color degradation correction described below, when one of the two colors is an absolute color, similar to Embodiment 1, the color after conversion of the absolute color is not changed, and the color after conversion of the other color is changed, so that color degradation correction is performed.

[0091] The information processing apparatus 101 according to the present embodiment can, for example, group the detected unique colors for each predetermined hue angle, and perform the same color degradation correction processing as in Embodiment 1 within the group. By grouping a part rather than the entire detected unique colors as one color group and performing color degradation correction processing only within that part, it is possible to reduce the processing load and processing time by reducing the number of combinations to be calculated.

[0092] Also, in the present embodiment, when performing color degradation correction, color degradation correction may be performed so that the change due to color degradation correction of the color after conversion is only in the lightness direction. By making the change in the color after color conversion by correcting the conversion parameters only in the lightness direction, it is possible to suppress the change in color tone due to the correction of the conversion parameters. In the present embodiment, for example, as shown in FIG. 7 described later, based on the lightness of the input color, the lightness after conversion by the color conversion process after correcting the conversion parameters is determined, and the correction of the conversion parameters may be performed so that the chroma does not change from before the correction.

[0093] When the color difference ΔE before gamma mapping is greater than the minimum distinguishable color difference, the color difference ΔE to be maintained only needs to be greater than the minimum distinguishable color difference. In such a case, in the color conversion by gamma mapping, it is conceivable to set the conversion parameters so that the color difference after conversion of two colors approaches the color difference before conversion. From such a viewpoint, the information processing apparatus 101 according to the present embodiment may correct the conversion parameters so that the color after conversion is determined based on the color after conversion and the color difference before conversion of the combined colors. By the color degradation correction, the color difference after gamma mapping of two colors becomes the color difference before gamma mapping, so that the ease of discrimination before gamma mapping can be reproduced even after the color conversion. Note that the color difference after gamma mapping after such color degradation correction may be greater than the color difference before gamma mapping. In this case, after the color conversion, it is possible to make the discrimination between the two colors easier than before gamma mapping. Hereinafter, such correction processing of the conversion parameters will be described.

[0094] Next, with reference to FIG. 5, an example of the determination process of whether color degradation occurs, which is performed by the information processing apparatus 101 according to the present embodiment in S202, will be described. First, the process performed when none of the colors to be processed are absolute colors will be described. FIG. 5 is a diagram showing two axes of the a* axis and the b* axis in the CIE-L*a*b* color space as a plane, and plotting a plurality of unique colors. In the present embodiment, as described above, unique colors within a predetermined hue angle are grouped as one color group. The hue range 501 represents a range in which a plurality of unique colors within a predetermined hue angle are regarded as one color group. In FIG. 5, the hue angle of 360 degrees is equally divided into six parts, and the hue range 501 represents the 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 grouped as one color group may be set in the range from 30 degrees to 60 degrees. When this angle is 60 degrees, it can be considered that the six color groups of red, green, blue, cyan, magenta, and yellow are grouped and separated. When this angle is 30 degrees, it can also be separated by the colors between the colors grouped at 60 degrees.

[0095] Note that, as shown in FIG. 5, the hue range grouped at a fixed angle may be set, or the hue range may be set according to the unique colors included in the image data. For example, the range of the hue angle may be determined so as to visually appear evenly (the same color), and the unique colors may be grouped within the set range of the hue angle.

[0096] Also, in the present embodiment, although the description will be made assuming that the color degradation correction process is performed using the unique colors within one group grouped using the hue angle, it is also possible to perform a calculation process for the number of combinations in which color degradation occurs as described later, using the unique colors included in two adjacent groups with adjacent hue angle ranges. By detecting such combinations across adjacent hue ranges, it is possible to suppress a sharp change in the number of color combinations in which color degradation occurs when the region for detecting the combinations is shifted by one. In this case, assuming that the range that is easily recognized as the same color (in the CIE-L*A*B* color space) is 30 degrees, by setting the hue angle range for one grouping to 15 degrees, the hue angle becomes 30 degrees when the two hue ranges are combined. Therefore, it is possible to detect combinations from within the hue angle range that is easily recognized as the same color.

[0097] The CPU 102 calculates the number of color combinations in which color degradation occurs for the combinations of unique colors within the hue range 501. In FIG. 5, colors 504, 505, 506, and 507 are shown as the colors included within the hue range 501. The CPU 102 according to the present embodiment determines whether color degradation occurs by color conversion processing for all combinations of the four colors 504, 505, 506, and 507. Such determination processing is repeated for all hue ranges. By such processing, it is possible to detect the color combinations in which color degradation occurs for each hue range and calculate the number of such combinations. In FIG. 5, there are a total of six color combinations within the hue range 501. The detection of the color combinations in which color degradation occurs can be performed in the same manner as in the first embodiment. In the following, when describing color combinations (two colors), unless otherwise noted, it is assumed that the description is about the combinations within one hue range.

[0098] The CPU 102 according to this embodiment selects a reference color (reference color) from among the unique colors included in the grouped color groups, and corrects the conversion parameters in the color conversion process so that the color after conversion of the other colors is determined based on the color difference between the other colors and the reference color. Further, the CPU 102 according to this embodiment can generate a function (brightness conversion function) for calculating the brightness of the color output from the brightness of the input color in the color conversion process after correction of the conversion parameters, based on the brightness of such a reference color and the brightness of a color different from the reference color (hereinafter referred to as a scale color). In this embodiment, two scale colors, one with a higher brightness and one with a lower brightness, are set for the reference color, and the above-described brightness conversion function is generated based on the reference color and the two scale colors. The brightness conversion function will be described later as Equation (8). Here, the color 603 (and its converted color 607) in FIG. 6 described later is the reference color, the color 601 (and its converted color 605) is the scale color, and based on the color differences between the colors 605, 607, and the color 603 and the color 601, the converted color 612 (or color 614) of the color 601 by the degenerate correction gamma mapping is calculated. Such processing will also be described later.

[0099] Hereinafter, with reference to FIG. 6, an example of the color degenerate correction process performed by the information processing apparatus 101 according to this embodiment in S205 will be described. In FIG. 6, on a plane using two axes, the L* axis and the C* axis in the CIE-L*a*b* color space, the color gamut of the input image data before the color conversion process is shown as the color gamut 617, and the color gamut after conversion by the gamma mapping is shown as the color gamut 616. L* represents brightness, and C* represents chroma. Also, the colors 504 to 507 included in the hue range 501 before the color conversion process are plotted in the color gamut 617 as the colors 601 to 604, respectively. Further, the colors 605 to 607 are the colors on the color gamut 616 after converting the colors 601 to 603 by the gamma mapping, respectively. Here, it is assumed that the color 604 is the same color even after the color conversion by the gamma mapping.

[0100] The CPU 102 according to this embodiment can calculate a correction rate, which is the reflection rate of the correction of the conversion parameter in the color degradation correction, based on the ratio of the number of color combinations in which color degradation occurs to the number of color combinations included in the group. For example, the CPU 102 according to this embodiment calculates the correction rate R in a certain group as follows. R = the number of color combinations in which color degradation occurs / the number of color combinations included in the group

[0101] The above correction rate R decreases as the ratio of the color combinations in which color degradation occurs within the group decreases, and increases as the ratio increases. For example, in the examples of FIGS. 5 and 6, the number of color combinations within the group is 6, and when it is determined that color degradation occurs in 4 of those combinations, the correction rate R is calculated as 0.667. By performing correction of the conversion parameter using such a correction rate, the degree of correction of color degradation can be strengthened as the ratio of the color combinations in which color degradation occurs within the group increases.

[0102] The CPU 102 according to this embodiment can set the above-described reference color from among the unique colors included in the group. In this embodiment, among the unique colors included in the group, the color with the highest chroma (maximum chroma color) is set as the reference color. Further, the CPU 102 sets the color with the highest lightness (maximum lightness color) and the color with the lowest lightness (minimum lightness color) as scale colors with respect to the reference color. 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 chroma color.

[0103] In the color degradation correction, the CPU 102 according to this embodiment generates corresponding lightness conversion functions for the unique colors (light color group) whose lightness is equal to or higher than the lightness of the maximum chroma color and the unique colors (dark color group) whose lightness is lower than the maximum chroma color, respectively. Hereinafter, the calculation process of the correction amount based on the correction rate R, the maximum lightness color, the minimum lightness color, and the maximum chroma color, which is performed by the CPU 102 according to this embodiment, will be described.

[0104] The CPU 102 separately calculates the correction amount Mh in the light color group and the correction amount Ml in the dark color group (details regarding the use of these correction amounts will be described later). In the following, the color 601, which is the maximum brightness color, is represented by L601, a601, and b601. Also, the color 602, which is the minimum brightness color, is represented by L602, a602, and b602. Further, the color 603, which is the maximum chroma color, is represented by L603, a603, and b603. Here, the CPU 102 may use, for example, a value obtained by multiplying the color difference ΔE between the maximum brightness color and the maximum chroma color by the correction rate R as the correction amount Mh. Also, the CPU 102 may use a value obtained by multiplying the color difference ΔE between the maximum chroma color and the minimum brightness color by the correction rate R as the correction amount Ml. An example of the calculation formulas for the correction amount Mh and the correction amount Ml is shown as the following formulas (6) and (7).

Equation

[0105] In FIG. 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 amount Mh and the correction amount Ml are values obtained by multiplying the such color differences ΔE608 and ΔE609 by R, respectively.

[0106] The CPU 102 according to the present embodiment generates a brightness conversion table for each hue range. The brightness conversion table according to the present embodiment is a table showing the brightness of the output pixel (converted brightness) by gamma mapping after color degradation correction with respect to the brightness of the input pixel. Hereinafter, a method for creating such a brightness correction table will be described.

[0107] The brightness conversion table according to this embodiment is a 1D LUT. Such a 1D LUT has a smaller dosage compared to a 3D LUT with a large number of dynamic items, and a reduction in the processing time required for transfer is expected. The brightness after conversion stored in the brightness conversion table is based on the brightness of the reference color, the brightness of the input color, and the brightness of the maximum brightness color (or minimum brightness color), and the brightness and correction amount of the color obtained by gamma mapping the reference color. (In this embodiment, it is calculated separately for the light color group and the dark color group). In the following, the input color will be described as a color in the light color group, but when using a color in the dark color group, the same processing can be performed using the minimum brightness color instead of the maximum brightness color.

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

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

[0110] First, the color 610, and the colors 612 and 614 set based on the color 610 will be described. Such a color 610 is a color that has the color difference between the color 603 and the color 601 as the color difference from the color 607 in the lightness direction. The color 612 is the color obtained by moving the color 605 after conversion of the color 601 in the lightness direction so as to have such a lightness L610. By performing color shrinkage correction so that the color after color conversion becomes the color 612, the change in the color after color conversion is only in the lightness direction, and the change in hue due to correction of the conversion parameters can be suppressed. Also, since the sensitivity of the lightness difference is high in terms of visual characteristics, by converting the color difference including the saturation into the lightness difference, it is possible to provide a color that is likely to feel as if a larger color difference is added after conversion even with a small lightness difference in terms of visual characteristics. Also, due to the relationship between the sRGB color gamut and the color gamut of the image forming apparatus, the lightness difference is likely to be smaller than the saturation difference. Therefore, by converting the color difference including the saturation into the lightness difference again, it becomes possible to effectively utilize a narrow color gamut.

[0111] On the other hand, as illustrated in FIG. 7, it is also conceivable that the color 612 thus converted goes outside the color gamut 616. In such a case, the color 612 may be moved by color difference minimum mapping to become the color 614 within the color gamut 616, and such a color 614 may be the color after conversion of the color 601 after color shrinkage correction. The color difference minimum mapping will be described later with reference to Expressions (10) to (14).

[0112] In the present embodiment, as shown in FIG. 7, the output value obtained by inputting the L607 of the reference color into the lightness conversion table remains L607. Also, as described above, L610 is the output value when the lightness L605 of the color after conversion of the maximum lightness color is input into the lightness conversion table. In the present embodiment, the value when a lightness value greater than L607 and smaller than L605 is input into the lightness conversion table is calculated based on L607 and L610. For example, as shown in the graph of FIG. 7, the lightness L 1 when input into the lightness conversion table, the output value L 2 can be calculated by the following Expression (8) which is a lightness conversion function. L 2 = L607 + (L610 - L607) × (L 1 - L607) / (L605 - L607) Equation (8)

[0113] L 1 As an input, a table that outputs such a value L 2 is calculated as the lightness conversion table in the light color group. For each color after conversion by gamma mapping, its lightness is converted by the lightness conversion table, and for colors that need to be moved, such as color 614 relative to color 612, the moved color becomes the color after conversion by gamma mapping with color degradation correction in this embodiment.

[0114] Here, it is assumed that the lightness conversion function is generated as in Equation (8) based on two points, but it is not particularly limited as long as the corresponding lightness output is calculated. For example, assuming that the lightness conversion function is a quadratic function, the parameters of the lightness conversion function may be calculated from three points.

[0115] In this embodiment, as described above, the L607 of the reference color does not change by input to the lightness conversion table. According to such processing, for the color with the highest chroma, the color difference can be corrected while maintaining the chroma by maintaining the color after conversion. Also, when the lightness greater than L605 or less than L606 is input to the lightness conversion table, the output value is indefinite here because it is not included in the input image data, but in that case, Equation (8) may be applied for calculation or the like.

[0116] Further, when the brightness value output by the brightness conversion table for the maximum brightness color exceeds the maximum brightness of the color gamut 616 after gamma mapping, the CPU 102 may perform maximum value clipping processing. The maximum value clipping processing according to the present embodiment is a process of subtracting the difference between such an output brightness value and the maximum brightness of the color gamut 616 after gamma mapping from the entire output of the brightness conversion table. In this case, the brightness of the maximum chroma color after gamma mapping also changes to the lower brightness side. According to such processing, even when the unique colors of the input image data are biased toward the high brightness side, the overall correction can be performed so as to utilize the brightness gradation on the low brightness side. Also, for the minimum brightness color, when the corrected minimum brightness is lower than the minimum brightness of the color gamut after gamma mapping, the same processing can be performed when the brightness value output by the conversion using the brightness conversion table exceeds the minimum brightness of the color gamut 616 after gamma mapping.

[0117] The CPU 102 corrects the gamma mapping table using the values of the brightness conversion table calculated in this way, thereby creating a degenerate correction table for each hue range. Here, for each corresponding input, the degenerate correction table is created by correcting the brightness value of the output of the gamma mapping table to the value of the output of the brightness conversion table.

[0118] So far, the processing performed when none of the colors to be processed are absolute colors has been described. Next, the processing when the colors to be processed include absolute colors will be described with reference to FIG. 19. Since the color 1902, color 1903, color 1904, color gamut 1916, and color gamut 1917 in FIG. 16 are the same as the color 602 (minimum brightness color), color 603 (maximum chroma color), color 604, color gamut 616, and color gamut 617 in FIG. 6, respectively, duplicate explanations will be omitted. Also, the color 1901 is the maximum brightness color in FIG. 19 that is included in the hue range 501 like the color 1902 and the like and exists within the color gamut 1916. Also, the color 1901 is an absolute color. The correction rate can be calculated in the same way as described in FIG. 6.

[0119] Here, the CPU 102 can calculate the correction amounts Mh and Ml in the same manner as described in FIG. 6. In the following, the color 1901, which is the maximum brightness color, is represented by L1901, a1901, and b1901. Also, the color 1902, which is the minimum brightness color, is represented by L1902, a1902, and b1902. Further, the color 1903, which is the maximum chroma color, is represented by L1903, a1903, and b1903. An example of the calculation formulas for the correction amount Mh and the correction amount Ml is shown as the following formulas (6’) and (7’).

Equation

[0120] Here, the CPU 102 generates a brightness conversion table for each hue range. In the example of FIG. 19, the brightness of the color 1903, which is the maximum chroma color, is L1903, and the correction amount Mh is the value obtained by multiplying the color difference ΔE1908 between the color 1901 and the color 1903 by R.

[0121] In the example of FIG. 6, the brightness correction was performed using the color 603, which is the maximum chroma color, as the reference color. On the other hand, in the example of FIG. 19, the CPU 102 performs the brightness correction using the color 1901, which is the absolute color, as the reference color. That is, by setting the reference color in the example of FIG. 6 to the color 1901 and the scale color to the color 1902 or the color 1903, it is possible to create a brightness conversion table by performing the same processing as described above.

[0122] Here, the maximum brightness before correction is the brightness L1901 of the color 1901, which is the maximum brightness color, and the minimum brightness before correction is the brightness L1902 of the color 1902, which is the minimum brightness color.

[0123] In the example of FIG. 19, the colors obtained by converting the colors 1901 to 1903 by gamma mapping are represented by the colors 1905 to 1907, respectively. The brightnesses of the colors 1905 to 1907 are L1905 to L1907, respectively. Also, since the color 1901 is an absolute color and exists within the color gamut 1616, the color 1605 after absolute gamma mapping is the same as the color 1601.

[0124] In the example of FIG. 19, using color 1905 (color 1901) as the reference color, a value L1910 obtained by adding a color difference ΔE1908 to L1905 is calculated, and the color 1907 after conversion of color 1903 is shown as color 1912, which is moved in the lightness direction so as to have such lightness L1910. FIG. 20 is a graph showing an example of components of the lightness conversion table according to the present embodiment corresponding to the example of FIG. 19. Here, in the same manner as the process described with reference to FIGS. 6 and 7, a table is generated that outputs L1910 with the lightness L1907 of color 1907 as the input, based on the lightness L1905 (L1901) of color 1905, which is the color obtained by converting the reference color. Also, here,

[0125] According to such a process, it is possible to reduce the degree of color degradation by changing in the lightness direction while maintaining the color after conversion for the absolute color.

[0126] Note that, for simplicity of explanation, the description related to FIG. 19 has been given assuming that the maximum lightness color is the absolute color. However, as long as the absolute color is maintained by color degradation correction, it is not particularly necessary for the maximum lightness color to be the absolute color. When the absolute color is the lightness between the maximum lightness color and the maximum chroma color, it is possible to create a lightness conversion table by performing separate processes for the light color group and the dark color group with respect to the reference color, in the same manner as the process using the maximum chroma color in FIG. 6 as the reference color.

[0127] In this embodiment, a brightness conversion table is created for each hue range. However, when performing processing using different tables for each such hue range, it is conceivable that a sharp change may occur in the output value depending on whether or not the boundary of the hue range is crossed. From such a perspective, when performing gamma mapping on a color in a certain hue range, the CPU 102 may additionally use the brightness conversion table of one adjacent hue range to perform color conversion processing. The CPU 102 may calculate the brightness after gamma mapping of the color by weighted-summing the brightness converted by the brightness conversion table in the said hue range and the brightness converted by the brightness conversion table in the said hue range. For example, when performing color conversion on a color C located at the hue angle Hn degrees (here, assumed to be an angle within the hue range 501 in FIG. 5), the CPU 102 can calculate the value Lc of the brightness after color conversion as shown in the following formula (9).

Equation

[0128] 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. Also, Lc 501 is the value obtained by converting the brightness of color C using the brightness conversion table in the hue range 501, and Lc 502 is the value obtained by converting the brightness of color C using the brightness conversion table in the hue range 502. According to such processing, by performing brightness conversion taking into account the brightness conversion tables of adjacent hue ranges, it is possible to suppress a sharp change at the boundary of the hue range of the output value due to gamma mapping.

[0129] Also, as described above, for a color that goes outside the color gamut 616 in the color degradation correction that uses the output brightness of the brightness conversion table as it is, such as color 612, the value after such conversion is converted to a value within the color gamut by minimum color difference mapping. In the example of FIG. 6, as described above, color 612 is converted to color 614 by minimum color difference mapping. Hereinafter, such minimum color difference mapping will be described.

[0130] For example, the CPU 102 can convert color 612 to the color within the color gamut 616 located in a predetermined direction from color 612 that is closest to color 612 by minimum color difference mapping. The relationship between the weight for setting such a predetermined direction and the distance ΔEw from color 612 to the color after conversion (here 614) at that time can be shown by the following formulas (10) to (14).

Equation

[0131] Here, the color before conversion by minimum color difference mapping is set as (Ls, as, bs), and the color after conversion is set as (Lt, at, bt). Also, as the weight for setting the above-described predetermined direction, the weight in the brightness direction is represented as Wl, the weight in the chroma direction is represented as Wc, and the weight of the hue angle is represented as Wh (Wh + Wl + Wc = 1). By searching for (Lt, at, bt) that satisfies formula (14), the color of the conversion destination by minimum color difference mapping is determined.

[0132] Here, the values of Wl, Wc, and Wh can be arbitrarily set by the user. In Embodiment 2, since the degenerated correction table is created so that the change due to the color degeneration correction of the converted color is only in the lightness direction, if one wants to maintain such an effect as much as possible, it is conceivable to make the weight in the lightness direction larger than the other weights. Also, since the hue has a great influence on the color tone, by making the weight of the hue angle larger (for example, than the weights in the lightness direction and the chroma direction), the change in color tone before and after the color degeneration correction can be suppressed. For example, the relationship between these weights can be set as Wh > Wl > Wc to perform minimum color difference mapping.

[0133] Note that in the minimum color difference mapping, the description was made assuming that color 614 is searched from among the colors located in a predetermined direction from color 612. However, the process of converting a color that is located outside the color gamut after the degeneration correction, such as color 612, into the color gamut is not particularly limited in this way. For example, color 612 may be moved into color gamut 616 with the minimum movement distance while maintaining the distance from color 607, and the resulting color may be set as color 614 so as to be the converted color of color 601 after the color degeneration correction.

[0134] In this embodiment, an example of performing color degeneration correction has been described so that the change due to the color degeneration correction of the converted color is only in the lightness direction. Here, as a visual characteristic, the sensitivity to the lightness difference varies depending on the chroma. For example, the lightness difference between low-chroma colors is more likely to have a higher sensitivity than the lightness difference between higher-chroma colors of such colors. From such a viewpoint, the CPU 102 according to this embodiment may perform control so that the amount of change in the lightness direction of the color after the color degeneration correction further varies depending on the chroma value. Here, the colors are classified into low-chroma colors and high-chroma colors, and for high-chroma colors, the processing is performed as described with reference to FIG. 6 and the like, and for low-chroma colors, the processing is performed so that the amount of change in the lightness direction of the converted color becomes smaller. In the following, an explanation will be given of the color degeneration correction performed so that the amount of change in the lightness direction becomes smaller for the colors determined to be such low-chroma colors.

[0135] When the CPU 102 corrects the brightness value of the output of the gamma mapping table to the value of the output of the brightness conversion table, the CPU 102 sets Lc’, which is obtained by linearly interpolating the brightness value Ln before such correction and the brightness value Lc after correction with the chroma correction rate S, as the brightness value of the output of the table after degeneracy correction. The chroma correction rate S is calculated by the following formula (15) using the chroma value Sn of the output value of gamma mapping and the maximum chroma value Sm of the color gamut after gamma mapping at the hue angle of the output value of gamma mapping. Also, Lc’ is calculated by the following formula (16). S = Sn / Sm Formula (15) Lc’ = S × Lc + (1 - S) × Ln Formula (16)

[0136] Here, the conditions for classifying colors into low-chroma and high-chroma are not particularly limited and can be arbitrarily set according to the user or the environment. For example, a predetermined threshold value may be set for the chroma, and colors with a chroma equal to or higher than the threshold value may be defined as high-chroma, and colors with a chroma lower than the threshold value may be defined as low-chroma. Alternatively, for example, the lower half of the detected chroma may be defined as low-chroma and the remaining half as high-chroma. Further, the CPU 102 may perform color degeneracy correction so that the amount of change in the color after conversion becomes zero for low-chroma colors.

[0137] According to such processing, color degeneracy correction can be performed in accordance with visual sensitivity, and a state where the degree of correction is too strong can be suppressed. For example, for colors on the gray axis, changes due to color degeneracy correction can be suppressed.

[0138] [Embodiment 3] [Mutual Exclusion of Different Hues] Even for colors existing within different hue ranges, when the brightness difference becomes small after gamma mapping, it may become difficult to distinguish them. From such a perspective, when the brightness difference between the gamma mappings of two colors decreases to a predetermined threshold value (color difference ΔE) or less, the information processing apparatus 101 according to the present embodiment can perform color degeneracy correction so that such a brightness difference increases.

[0139] The information processing apparatus 101 according to this embodiment can perform the same color fading correction processing as in Embodiment 1. Hereinafter, the differences in the color fading correction processing performed by the information processing apparatus 101 between this embodiment and Embodiment 1 will be described.

[0140] Hereinafter, with reference to FIG. 8, an example of the determination processing performed by the information processing apparatus 101 according to this embodiment in S202 to determine whether brightness fading occurs will be described. In this embodiment, as described above, the case where the brightness difference after the gamma mapping of two colors decreases to a predetermined color difference ΔE or less is referred to as brightness fading. Further, the CPU 102 according to this embodiment determines that color fading has occurred when brightness fading has occurred.

[0141] In S202, the CPU 102 detects a combination of colors in which brightness fading occurs from the combinations of unique colors included in the image data based on the unique color list detected in S201. In FIG. 8, on a plane using two axes, the L* axis and the C* axis in the CIE-L*a*b* color space, the color gamut of the input image data before the color conversion process is shown as color gamut 801, and the color gamut after being converted by gamma mapping is shown as color gamut 802. The input image data includes color 803 (first color) and color 804 (second color), which are shown on color gamut 801. Colors 805 and 806 are colors on color gamut 802. Color 805 is the color when gamma mapping is performed on color 803, and color 806 is the color when gamma mapping is performed on color 804. The processing described below is repeated for all combinations of unique colors included in the image data.

[0142] Here, when the brightness difference 808 between color 805 and color 806 is smaller than the brightness difference 807 between color 803 and color 804, the CPU 102 determines that the brightness difference has decreased. Here, it is assumed that the brightness difference in the CIE-L*a*b* color space is calculated. The color information in the CIE-L*a*b* color space is represented by a three-axis color space of L*, a*, and b* respectively. 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. When the input image data is represented in another color space, it may be converted to the CIE-L*a*b* color space by known color space conversion techniques, or subsequent processing may be performed in that color space as it is. The brightness difference ΔL807 and the brightness difference ΔL808 are calculated, for example, by the following equations (17) and (18). [Number]

[0143] When the brightness difference ΔL808 is smaller than the brightness difference ΔE807, the CPU 102 determines that the brightness difference has decreased. Further, when the brightness difference ΔL808 is less than or equal to a predetermined threshold value, the CPU 102 determines that there is not enough difference to distinguish those colors and that brightness degradation has occurred.

[0144] If the brightness difference between color 805 and color 806 is large enough to be distinguishable as different colors in terms of human visual characteristics, it can be determined that there is no need to correct the brightness difference. From this perspective, the threshold value used here can be, for example, 0.5. The CPU 102 may determine that brightness degradation has occurred when the brightness difference ΔL808 is smaller than the brightness difference ΔL807 and the brightness difference ΔL808 is smaller than 0.5.

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

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

[0147] The above correction rate T decreases as the ratio of the color combinations that cause lightness degradation in the unique color list decreases, and increases as the ratio increases. By performing correction of the conversion parameters using such a correction rate, the degree of correction of color degradation can be strengthened as the ratio of the color combinations that cause lightness degradation increases.

[0148] Next, the CPU 102 performs lightness difference correction based on the correction rate T and the lightness before gamma mapping. The lightness Lc after lightness difference correction can be calculated, for example, by the following formula (19) as the value obtained by interpolating between the lightness Lm before gamma mapping and the lightness Ln after gamma mapping with the correction rate T. Lc = T × (Lm - Ln) + Ln Formula (19)

[0149] Such lightness difference correction is repeated for all unique colors in the input image data. In FIG. 8, the lightness L805 of color 805 is subjected to lightness difference correction using the correction rate T, and the result of the correction is shown as color 809. In the example of FIG. 8, since color 809 is outside the color gamut 802 after gamma mapping, it is mapped to the color gamut 802 and becomes color 810. The same process is performed for color 804. According to such a process, gamma mapping with an increased lightness difference can be performed for the colors included in the image data, and the degree of lightness degradation can be reduced when lightness degradation occurs. Therefore, by suppressing the state where the lightness difference after gamma mapping becomes too small, a decrease in discriminability can be reduced.

[0150] Note that the reduction process for brightness degradation according to this embodiment may be performed simultaneously with the process according to Embodiment 2. In that case, the brightness difference correction process is performed with respect to the reference color of the color degradation correction process. Along with correcting the brightness difference of the reference color, it is also possible to process the brightness difference correction of other colors. According to such a configuration, when performing color degradation correction, it is possible to reduce not only the degree of color degradation but also the degree of brightness degradation.

[0151] [Embodiment 4] [Region Setting] In Embodiments 1 to 3, color degradation correction processing was performed on all unique colors included in the input image data. However, in some cases, different priorities are set for each region in the input image data, and it may be preferable to perform different gamma mappings for each of them.

[0152] For example, the meaning of the color in identification may be different between the color used in a graph and the color used as part of a gradation. For example, for the color used in a graph, since the distinguishability from another color in the graph is important, it may be considered to perform a strong color degradation correction with a high degree of color degradation correction. On the other hand, for the color used as part of a gradation, since the gradation with the colors of surrounding pixels is important, it may be considered to perform a weak color degradation correction with a low degree of color degradation correction. When these two colors are the same color and are included in the same input image data, it is preferable to perform a relatively strong color degradation correction for the color of the graph and a relatively weak color degradation correction for the color used as part of the gradation. Such a situation can occur particularly when the input manuscript data has image data of multiple pages and color degradation correction processing is performed on such multiple pages.

[0153] Similarly, even for colors that want to maintain absolute hues such as corporate colors, there are cases where color retention as an absolute color is not necessary, such as when they are used for only a few pixels during gradation. Therefore, if the absolute gamma mapping in S104 is performed only on the condition that there are absolute colors registered in the manuscript, there is a possibility that unintended color degradation correction will be performed, such as impairing the gradation harmony of the gradation.

[0154] The information processing apparatus 101 according to this embodiment sets a plurality of partial regions in the image data, and for each of these partial regions, performs the processing after S102 in Embodiment 1. That is, the information processing apparatus 101 according to this embodiment creates a post-degradation correction table for each partial region. In particular, when there are a plurality of images, a plurality of partial regions may be set from among those images.

[0155] FIG. 9 is a flowchart showing an example of the overall processing performed by the information processing apparatus 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 Embodiment 1, except that S301 to S302 following S101 and S303 following S107 are additionally performed, and thus duplicate explanations are omitted.

[0156] In S301 following S101, the CPU 102 sets partial regions in the manuscript data acquired in S101. Here, it is assumed that at least two partial regions are set. The partial regions according to this embodiment may be set based on the information included in the manuscript data, may be set based on the image of the manuscript data (for example, as a region where the pixel values satisfy a predetermined condition), or may be set based on a user input for setting partial regions.

[0157] S303 to S309 are loop processes with one of the partial regions set in S302 as the processing target. In S302, the CPU 102 sets one of the partial regions set in S301 as the processing target and advances the processing to S102. In S102 to S107 shown in FIG. 9, the same processing as in FIG. 3 is performed on the processing target set in S302.

[0158] In S308 following S107, the CPU 102 determines whether all the partial areas set in S301 are to be processed. If all the partial areas are to be processed, the process proceeds to S108; otherwise, the process returns to S302.

[0159] The setting process of the partial area in S301 will be described in detail. FIG. 10 is a diagram for explaining an example of a page of the manuscript data input in S301 of FIG. 9 in the present embodiment. Here, it is assumed that the document data included in the manuscript data is described in PDL. PDL is an abbreviation for Page Description Language, and is composed of a set of drawing commands in page units. The types of drawing commands are defined for each PDL specification, and any type can be adopted. In the present embodiment, as an example, three types of the following commands 1 to 3 are used. Command 1) TEXT drawing command (X1, Y1, color, font information, string information) Command 2) BOX drawing command (X1, Y1, X2, Y2, color, filling shape) Command 3) IMAGE drawing command (X1, Y1, X2, Y2, image file information)

[0160] In addition, drawing commands of types according to the application, such as a DOT drawing command for drawing points, a LINE drawing command for drawing lines, or a CIRCLE drawing command for drawing arcs, may be used. For example, general PDLs 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.

[0161] The manuscript page 1000 in FIG. 10 represents one page of the document data. As an example, this document data is assumed to have a pixel count of 600 pixels in width and 800 pixels in height. Hereinafter, an example of PDL corresponding to the document data of the manuscript page 1000 in FIG. 10 is shown.

[0162] <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>

[0163] The following describes the description from this <PAGE=001> (line 1) to (line 11). Here, each of these descriptions describes an object including text, graphics (boxes, squares), and image data included in the manuscript data. Here, as the types of objects, three types, i.e., text, graphics, and image data, will be described, but different types of objects may be used. For example, an object of a type indicating a partial area where special printing is performed may be used.

[0164] The <PAGE=001> on the first line is a tag representing the page number of the manuscript data according to this embodiment. Usually, since PDL is designed to be able to describe multiple pages, a tag indicating the page break is described in the PDL. In this example, indicates that it is the first page. In this embodiment, it corresponds to manuscript page 1000 in FIG. 10. If there is a second page, <PAGE=002> will be described following the above PDL.

[0165] The second line <text>from the third line< / text> to is the drawing instruction 1 (the first TEXT instruction) for describing text as an object, corresponding to the first line in area 1001 of FIG. 10. The first two coordinates indicate the coordinates (X1, Y1) at the upper left of the drawing area, and the following two coordinates indicate the coordinates (X2, Y2) at the lower right of the drawing area. Subsequently, it is described that the color of the text is BLACK (black: R = 0, G = 0, B = 0), the font of the text is "STD" (standard), the font size of the text is 18 points, and the character string to be described is "ABCDEFGHIJKLMNOPQR".

[0166] The fourth line <text>from the fifth line< / text> to the end is the drawing instruction 2 (the second TEXT instruction) for describing text as an object, corresponding to the second line of the area 1001 in FIG. 10. Similar to instruction 1, the first four coordinates and the two strings respectively represent the drawing area, the character color, and the font of the characters, and it is described that the string to be described is "abcdefghijklmnopqrstuv".

[0167] The sixth line <text>from the seventh line< / text> to the end is the drawing instruction 3 (the third TEXT instruction) for describing text as an object, corresponding to the third line of the area 1001 in FIG. 10. Similar to drawing instruction 1 and drawing instruction 2, the first four coordinates and the two strings respectively represent the drawing area, the character color, and the font of the characters, and it is described that the string to be described is "1234567890123456789".

[0168] The eighth line <box>from< / box> to the end is the drawing instruction 1 (BOX instruction) for describing a box as an object, corresponding to the area 1002 in FIG. 10. The first two coordinates indicate the upper left coordinate (X1, Y1) which is the drawing start point, and the following two coordinates indicate the lower right coordinate (X2, Y2) which is the drawing end point. Subsequently, the filling color of the area is SPOT1 (feature 1: R = R01, G = G01, B = B01), and the filling shape is STRIPE (striped pattern) which is specified. In this embodiment, the direction of the striped pattern is a line in the lower right direction, but the angle and period of the line etc. may be specified in the BOX instruction. Different from drawing instructions 1 to 3, the color of the line in drawing instruction 4 is SPOT1. This indicates that in this embodiment, it is the color registered as the first in the spot color, and it is assumed to be "C red" registered as the first color in FIG. 16. However, since the spot color has already had a substantial industry standard recognized and applied in the printing industry, it may be described using the name of the substantial industry standard (such as Pantone color name).

[0169] The IMAGE instructions on the 9th and 10th lines are drawing instructions 1 (IMAGE instructions) that describe the specification of image data as an object, corresponding to area 1003 in Fig. 10. Here, it is described that the file name of the image existing in this area is "PORTRAIT.jpg", which indicates that the image data is a JPEG file, an image compression format that is generally widespread. What is described on the 11th line indicates the end of the drawing of this page.

[0170] As an actual PDL file, in addition to the above drawing instruction group, there are cases where it is integrated including "STD" font data and the "PORTRAIT.jpg" image file. This is because when the font data and the image file are managed separately, only the drawing instructions cannot form the character part and the image part, and the information becomes insufficient to form the image in Fig. 10. Also, area 1004 in Fig. 10 is an area where there are no drawing instructions and is blank.

[0171] As described above, the CPU 102 according to this embodiment may set the partial area based on the information included in the manuscript data, may set it based on the image of the manuscript data (for example, as an area where the pixel values satisfy a predetermined condition), or may set it based on a user input for setting the partial area. When the partial area is set based on the information included in the manuscript data, for example, for a manuscript page described in PDL like manuscript page 1000 in Fig. 10, the partial area can be extracted by analyzing the above PDL. Specifically, each drawing instruction is described such that the start point and the end point of the Y coordinate of the object are as follows. The objects of each TEXT instruction are continuously arranged in terms of area. Also, both the BOX instruction and the IMAGE instruction are separated from the TEXT instruction by 100 pixels or more in the Y direction. Drawing Instruction Y Start Point Y End Point First TEXT Instruction 50 100 Second TEXT Instruction 100 150 Third TEXT Instruction 150 200 BOX Instruction 350 550 IMAGE command 300 700

[0172] Next, the BOX command and the IMAGE command are described such that the start point and the end point of the X coordinate of each object are as follows. The X coordinates of the objects of each TEXT command are common to both the viewpoint and the end point. Also, the objects drawn by the BOX command and the IMAGE command are 50 pixels apart in the X direction. Drawing command X start point X end point BOX command 50 200 IMAGE command 250 580

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

[0174] In this way, the CPU 102 can set sub-regions based on the description regarding the drawing of the objects included in the manuscript data. Also, in addition to the configuration in which the CPU 102 analyzes the PDL and sets sub-regions as described above, the CPU 102 can divide an image into a plurality of divided regions and set sub-regions based on such divided regions. Here, for example, the image may be divided into unit tiles described later, and one or more such unit tiles may be set as sub-regions. The following describes such a configuration.

[0175] FIG. 11 is a flowchart showing an example of detailed processing when the partial area setting process in S301 is performed in tile units. At S401, the CPU 102 sets unit tiles (hereinafter, may be simply referred to as "tiles") on the manuscript page and divides the manuscript page into such tiles. In the present embodiment, the unit tiles on the manuscript page are set as tiles of 30 pixels both vertically and horizontally. Since the original manuscript page is 600×800 pixels as described above, there are 20 tiles in the X direction and 27 tiles in the Y direction (including 1 tile that cannot be fully drawn). To set such unit tiles, here, a variable for setting an area number for each tile is set as Area_number

[20]

[27] .

[0176] FIG. 12 is a diagram showing an image of tile setting on the manuscript page in the present embodiment. In FIG. 12, the manuscript page 1200 represents the entire manuscript page. Also, the area 1201 is an area where text is drawn, the area 1202 is an area where a graphic is drawn, the area 1203 is an area where image data is drawn, and the area 1204 is an area where no object is drawn. In the following, when specifying tiles arranged on the manuscript page in this way, the tile at the x-th position from the left and the y-th position from the top may be referred to as tile (x, y).

[0177] At S402, the CPU 102 determines whether each tile is a blank tile. Here, a tile without an overlapping object is determined to be a blank tile, and otherwise, it is determined not to be a blank tile. The CPU 102 may determine whether it is a blank tile by comparing the coordinates of the tile with the start and end points of the XY coordinates of each object described by the drawing command as described above, or may detect a tile in which all pixel values within the actual unit tile are R = G = B = 255 as a blank tile. Note that whether this determination is made by comparing coordinates or based on the pixel values within the tile can be set based on processing accuracy, detection accuracy, etc.

[0178] In S403 to S410, an area number is set for each tile. In 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 the tile determined to be a blank tile in S402 · Set the area number "-1" for tiles other than the above (non - blank) · Set "0" to the maximum value of the area number

[0179] Specifically, the initial values of each value are set as follows. For blank tile (x1, y1) area_number[x1][y1]=0 For non - blank tile (x2, y2) area_number[x1][y1]= - 1 Maximum value of area number max_area_number = 0

[0180] Therefore, at the completion of the process in S402, "0" or "-1" is set for all tiles.

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

[0182] In S405, the CPU 102 determines whether a tile with an area number of "-1" was detected in S404. If detected, the process proceeds to S406; otherwise, the process proceeds to S410.

[0183] In S406, the CPU 102 increments the maximum area number by +1 and sets the area number of the tile detected as the area number "-1" to the updated maximum area number. Specifically, for the detected tile (x3, y3), the following processing is performed. max_area_number = max_area_number + 1 area_number[x3][y3] = max_area_number

[0184] For example, here, if it is a tile that is first detected by the detection process of S404 and the process of S406 is first executed, the updated maximum area number will be "1", so the area number of the tile will be "1". After that, each time S406 is executed again, the maximum area number increases by 1.

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

[0186] In S408, the CPU 102 determines whether the tile with the area number "-1" was detected in S407. If it was detected, the process proceeds to S409; otherwise, the process returns to S404.

[0187] In S409, the CPU 102 updates the area number of the tile that is an adjacent tile and has the area number "-1" to the maximum area number at that time. Specifically, for the detected adjacent tile, with the attention tile position being (x4, y4), it is realized by processing as follows. 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

[0188] When the area number of the adjacent tile is updated in S409, the process returns to S407, and the detection of other adjacent non - blank tiles continues. And when there is no situation where non - blank adjacent tiles that have not been detected exist, that is, when there are no tiles to which the maximum area number should be assigned, the process returns to S404. In a state where the area numbers of all tiles are not "-1", that is, when all tiles are blank tiles or when area numbers of 0 or more are set for all tiles, it is determined in S405 that there are no tiles with the area number "-1".

[0189] In S410, the CPU 102 sets the maximum value of the area number as the number of areas and ends the process of FIG. 11. That is, the maximum value of the area number set so far becomes the number of areas existing in the manuscript page.

[0190] FIG. 13 is a diagram showing each tile area after the area setting is completed. The manuscript page 1300 in FIG. 13 represents the entire manuscript page corresponding to the manuscript page 1200. The area 1301 in FIG. 13 is an area where text is drawn, the area 1302 is an area where a figure is drawn, the area 1303 is an area where image data is drawn, and the area 1304 is an area where no object is drawn. Here, the result of the area setting is 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

[0191] In the example shown in FIG. 13, each area is spatially separated via at least one blank tile. In other words, assuming that a plurality of tiles that do not even have one blank tile are adjacent to each other, they are processed as the same area. By doing so, even when an area composed of a color for which an absolute color tone such as corporate color is to be maintained exists at a certain distance from other areas, it is possible to separately apply processing using an absolute color gamut mapping table and color degradation correction that does not emphasize the color tone of the absolute color to each of them.

[0192] Human vision has the characteristic that the difference between two colors existing spatially adjacent or in extremely close locations is relatively easy to perceive, while the difference between two colors existing in spatially separated locations is relatively difficult to perceive. That is, the above-mentioned "output in different colors" result is likely to be perceived when performed on the same color existing spatially adjacent or in extremely close locations, and is difficult to perceive when performed on the same color existing in spatially separated locations.

[0193] In the process according to this embodiment, between regions regarded as different regions, there will be a distance of at least a predetermined minimum distance apart on the paper surface. This also means that pixel positions regarded as the same region exist within such a minimum distance across the background color (for example, white, black, or gray). This minimum distance is determined by the size of the unit tile and can be arbitrarily set according to the size of the paper for printing or the observation distance assumed by the user, etc. In this embodiment, printing on A4-sized printing paper is assumed, and the minimum distance is set to be 0.7 mm or more. Even if the distance between such objects on the paper surface is not separated by the minimum distance, if they are set as different objects, they may be regarded as different regions. For example, when there are an image region and a box region that are not separated by a predetermined distance, since their object types are different, they may be set as different regions. By doing so, even when a region composed of corporate colors, etc. exists close to other regions, it is also possible to separately apply the process using the absolute color gamut mapping table and the color degradation correction that does not emphasize the hue of the absolute color.

[0194] Also, in the determination in S102, when it is determined that the data to be processed contains predetermined color information, the subsequent process has been described as shifting to S106 that performs absolute gamut mapping. However, for example, when it is assumed that a region composed of corporate colors is a specific type of object, it may be considered that there is no need to perform absolute gamut mapping even if the predetermined color information is contained for objects that are not such a specific type. From such a perspective, the CPU 102 according to this embodiment may perform absolute gamut mapping for a partial region that is a region of an object in the image, in addition to the fact that the region contains specific color information, when the region is a specific type of object. Such a specific type of object can be arbitrarily set, but for example, it can be set via a UI as shown in FIG. 18.

[0195] In this embodiment, the CPU 102 uses the area of the object in the image as a partial area, and determines whether the type of the object (included in the description of the object) is a specific type. Next, when the partial area contains predetermined color information and the object is of a specific type, the CPU 102 can select a color conversion process to perform absolute gamma mapping.

[0196] Hereinafter, the color correction setting dialog 1801 shown in FIG. 18, which is displayed when the "Color Correction Setting" button in FIG. 15 is pressed, will be described. FIG. 18 is a diagram showing a dialog for setting a color correction method. The determination criteria set here are used, for example, in S102 in FIG. 9. In the color correction setting dialog 1801, a color correction setting list display section 1802 and a selection dialog 1803 are displayed.

[0197] Here, a color correction setting list is displayed in the color correction setting list display section 1802. The color correction setting list stores, as items for performing color correction settings, radio buttons for selecting a printing mode (always one of them is in a selected state), a mode name (standard / special features, registration / deletion of other names is also possible), and an attribute type color correction setting (character / line drawing, photo, or special features). In the example shown in FIG. 18, two modes, standard (character / line drawing = adaptive, photo = fixed, special features = adaptive) and special features (character / line drawing = adaptive, photo = fixed, special features = color retention), are registered as the mode names. Which mode is selected during actual printing is specified by the top "Printing Mode" radio button. In the example shown in FIG. 18, it is in the setting state of "Print in special features mode".

[0198] The CPU 102 can also add, update, or delete the printing mode by receiving the user's pressing operation on the mode name button in the color correction setting dialog 1801. Since the operations such as adding a printing mode can be performed in the same way as the operations on the registration / deletion dialog 1603 described with reference to FIG. 17, the description here is omitted.

[0199] The selection dialog 1803 is a dialog for updating the processing content for the "feature" input data in the "feature mode". Here, when the "color retention" button displayed at the lower right in the color correction setting list display section 1802 is pressed by the user, the selection dialog 1803 is displayed.

[0200] In the selection dialog 1803, three selection buttons, namely the "adaptive" button, the "fixed" button, and the "color retention" button, are displayed. The processing performed when each of the three selection buttons is pressed is, respectively, the processing for performing "adaptive" color fade correction gamma mapping, the processing with a color fade correction strength of 0 in the above "adaptive" processing, and the absolute gamma mapping performed in S104. Here, when the user presses the "adaptive" button, · "Color correction setting at feature time" in the "feature" printing mode = "adaptive" is set, and the "color retention" display at the lower right in the color correction setting list display section 1802 is updated to "adaptive". In this case, the color correction for the "standard" printing mode and the "feature" printing mode is the same processing.

[0201] Similarly, in the color correction setting list display section 1802, when the user presses the "fixed" button, · Color correction setting at feature time in the "feature" printing mode = "fixed" is set, and the "color retention" display at the lower right in the color correction setting list display section 1802 is updated to "fixed".

[0202] Also, when the user presses the "adaptive" button, the setting does not change.

[0203] In the PDL shown in FIG. 10 according to the present embodiment, for characters / lines, photos, and features in the "attribute type color correction setting", the objects that satisfy the following conditions are respectively targeted. · Characters / lines are TEXT commands or BOX commands, and objects whose colors are not specified as features (SPOT) · Photos are objects of IMAGE commands · With the CHARACTER and BOX commands, objects with spot color specified

[0204] As a result, each area in FIG. 13 is · Area 1301 → Characters / Lines · Area 1302 → Spot · Area 1303 → Photo determined as such, and as a result, the color correction for each area is · Area 1301 → Characters / Lines → Adaptive · Area 1302 → Spot → Color retention · Area 1303 → Photo → Fixed as follows.

[0205] In actual processing, when an area is composed of multiple drawing commands, if there is at least one object in the area that is determined as a spot, all objects in the area may be processed by absolute gamma mapping. In this case, it is possible to more easily maintain the color connection at the boundary between objects. Also, as described above, when the object types are different, they may be determined as separate areas. In this case, the color degradation correction set as suitable for each object will be applied.

[0206] According to such a configuration, a plurality of partial areas can be set in the image data, and a post-degradation correction table can be created for each of them. Also, according to this processing, even for separated objects, if they have the same color distribution and the same type, the same color degradation correction can be performed. Also, by performing the color degradation correction process for each partial area in this way, the number of color combinations to be the target of the color degradation correction process can be limited, and the processing speed can be improved.

[0207] In the present embodiment, the description has been made on the assumption that the information of the object is included in the manuscript data (as described with reference to FIG. 10). However, as long as the object in the image can be identified, it is not particularly necessary for the manuscript data to have the type of the object. For example, the CPU 102 may be configured to detect a specific object from the image. In that case, for example, the position of the object can be the position of the bounding box that encloses the object, and the type of the object can be set by classifying the class of the detected object. Such a detection process of the object in the image can be executed by, for example, a known object recognition technique using a neural network.

[0208] Also, in the present embodiment, the description has been made on the assumption that the partial region in the manuscript data is set in S301. Here, as described above, the manuscript data has image data of a plurality of pages, and partial regions may be set from those plurality of pages. In particular, the entire image data of one page (or more) among the image data of the plurality of pages may be set as the partial region with respect to the entire manuscript data. Hereinafter, an example in which such image data for one page is set as the partial region (partial page) will be described.

[0209] Here, as described above, the document data to be printed is document data composed of multiple pages. The "partial page" is information for grouping one or more pages out of the multiple pages included in the document data and making them the target for creating the above-described degenerate correction gamma mapping table. For example, assume that the document data is composed of pages 1 to 3. If each page is to be the target for creating a separate mapping table, pages 1, 2, and 3 each become a partial page. Also, if pages 1 and 2 and page 3 are each to be the target for creating a mapping table, "pages 1 and 2" and "page 3" become partial pages. That is, the CPU 102 can separately apply processing using the absolute color gamma mapping table and color degenerate correction that does not emphasize the hue of the absolute color to each such partial page.

[0210] Note that the "partial page" used here is not limited to the grouping in page units included in the document data. For example, in some cases, a partial area of page 1 is set as the "partial page". In this case, in S301, the CPU 102 sets the document data into a plurality of "partial pages" according to a predetermined grouping of "partial pages". Note that the grouping of "partial pages" may be specified by the user.

[0211] The disclosure of this specification includes the following information processing apparatus, information processing method, and program. (Item 1) An acquisition means for acquiring first color information from an image including pixels representing color information of a first color defined in a first color gamut and pixels representing color information of a second color defined in the first color gamut; A setting means for setting second color information indicating a specific color; A conversion means for executing a color conversion process of converting the first color in the image to a third color defined in a second color gamut and converting the second color to a fourth color defined in the second color gamut; When the color difference between the third color and the fourth color is smaller than a predetermined threshold value, When the first color is not included in the specific color, correct the conversion parameters in the color conversion process so that the color obtained by converting the first color becomes a fifth color defined in the second color gamut, where the color difference from the fourth color is greater than the color difference between the third color and the fourth color. When the first color is included in the specific color, a first correction means for correcting the conversion parameters in the color conversion process so that the color obtained by converting the second color becomes a sixth color defined in the second color gamut, where the color difference from the fourth color is greater than the color difference between the third color and the fourth color. An information processing apparatus, characterized by comprising the above. (Item 2) The information processing apparatus according to item 1, characterized in that the predetermined threshold value is smaller than the color difference between the first color and the second color. (Item 3) The information processing apparatus according to item 1, characterized in that the predetermined threshold value is 2.0 in terms of Euclidean distance ΔE. (Item 4) The information processing apparatus according to item 2, characterized in that the first color and the second color are colors expressed in any one of the color spaces of CIE-L*a*b*, RGB, HLS, and HSV. (Item 5) The information processing apparatus according to item 1, characterized in that the second color gamut is a color reproduction gamut for printing by an image forming apparatus. (Item 6) The information processing apparatus further comprises grouping means for grouping the colors included in the image according to the hue range. The information processing apparatus according to item 1, characterized in that the first color information including the first color and the second color is color information in the hue range grouped by the grouping means. (Item 7) The information processing apparatus according to item 6, characterized in that the sixth 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 8) The information processing apparatus according to item 7, wherein the sixth color is a color obtained by correcting the lightness of the fourth color based on the color difference between the first color and the second color. (Item 9) The information processing apparatus according to item 8, wherein the sixth color is a color obtained by setting the lightness of the fourth color to a value obtained by adding the color difference between the first color and the second color to the lightness of the third color. (Item 10) The information processing apparatus according to item 7, wherein the sixth color is a color obtained by mapping a color obtained by setting the lightness of the fourth color to a value obtained by adding the color difference between the first color and the second color to the lightness of the third color, within the second color gamut. (Item 11) The conversion means converts a seventh color different from the first color and the second color included in the first color information into an eighth color defined in the second color gamut, The information processing apparatus according to item 7, wherein the eighth color is a color calculated based on the third color, the fourth color, and a ninth color which is a color obtained by converting the seventh color by the color conversion process before correction of the conversion parameters by the first correction means. (Item 12) The information processing apparatus according to item 7, wherein the second color is the color with the highest chroma among the colors included in the first color information. (Item 13) The information processing apparatus according to item 12, wherein the first color is the color with the highest lightness or the lowest lightness among the colors included in the first color information. (Item 14) The information processing apparatus further includes second determination means for determining whether two colors are recognized as the same color based on a hue range, The information processing apparatus according to item 6, wherein the grouping means groups colors determined to be the same color by the second determination means. (Item 15) The information processing apparatus according to item 14, wherein the second determination means recognizes colors in a hue range from 30 degrees to 60 degrees as the same color. (Item 16) Based on the ratio between the total number of color combinations included in the first color information and the number of color combinations in the first color information where the color difference after conversion by the color conversion process is smaller than the predetermined threshold, further comprising second correction means for correcting the correction amount of the conversion parameter by the first correction means, the information processing apparatus according to item 1. (Item 17) The specific color includes a plurality of colors, the information processing apparatus according to item 1. (Item 18) The acquisition means acquires first color information from an image of a partial region in the image, the information processing apparatus according to item 1. (Item 19) The partial region is a region composed of one or more of the divided regions obtained by dividing the image into a plurality of regions, the information processing apparatus according to item 18. (Item 20) When the first color is included in the specific color, the correction means further corrects the conversion parameter in the color conversion process such that the color obtained by converting the second color becomes the sixth color and the color obtained by converting the first color in the previous period becomes the first color, the information processing apparatus according to item 1. (Item 21) Acquisition means for acquiring first color information from an image including a pixel representing the color information of a first color defined in a first color gamut and a pixel representing the color information of a second color defined in the first color gamut; A step of setting second color information indicating a specific color; A step of performing a color conversion process on the image to convert the first color into a third color defined in a second color gamut and convert the second color into a fourth color defined in the second color gamut; When the color difference between the third color and the fourth color is smaller than a predetermined threshold, When the first color is not included in the specific color, the conversion parameter in the color conversion process is corrected so that the color obtained by converting the first color becomes a fifth color defined in the second color gamut, where the color difference between the converted first color and the fourth color is greater than the color difference between the third color and the fourth color. When the first color is included in the specific color, the conversion parameter in the color conversion process is corrected so that the color obtained by converting the second color becomes a sixth color defined in the second color gamut, where the color difference between the converted second color and the fourth color is greater than the color difference between the third color and the fourth color. An information processing apparatus, characterized by comprising the above. (Item 22) A program for causing a computer to function as each means of the information processing apparatus according to any one of Items 1 to 20.

[0212] (Other embodiments) The present invention can also be realized by supplying a program that realizes one or more functions of the above-described embodiment to a system or apparatus via a network or a storage medium, and having one or more processors in the computer of the system or apparatus read and execute the program. Further, it can also be realized by a circuit (for example, ASIC) that realizes one or more functions.

[0213] The invention is not limited to the above-described embodiment, and various changes and modifications are possible without departing from the spirit and scope of the invention. Therefore, claims are attached to disclose the scope of the invention.

Explanation of reference numerals

[0214] 101: Information processing apparatus, 108: Image forming apparatus

Claims

1. An acquisition means for acquiring first color information from an image including a pixel representing color information of a first color defined in a first color gamut and a pixel representing color information of a second color defined in the first color gamut; A setting means for setting second color information indicating a specific color; A conversion means for performing a color conversion process on the image to convert the first color into a third color defined in a second color gamut and convert the second color into a fourth color defined in the second color gamut; When the color difference between the third color and the fourth color is smaller than a predetermined threshold; When the first color is not included in the specific color, correct the conversion parameter in the color conversion process so that the color obtained by converting the first color is a fifth color defined in the second color gamut, and the color difference from the fourth color is larger than the color difference between the third color and the fourth color; A first correction means for correcting the conversion parameter in the color conversion process so that, when the first color is included in the specific color, the color obtained by converting the second color is a sixth color defined in the second color gamut, and the color difference from the fourth color is larger than the color difference between the third color and the fourth color; An information processing apparatus, characterized by comprising the above.

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

3. The information processing apparatus according to claim 1, wherein the predetermined threshold is 2.0 in terms of Euclidean distance ΔE.

4. The information processing apparatus according to claim 2, wherein the first color and the second color are colors represented in any one of color spaces of CIE-L*a*b*, RGB, HLS, and HSV.

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

6. Further comprising a grouping means for grouping the colors included in the image according to a hue range, The information processing apparatus according to claim 1, wherein the first color information including the first color and the second color is color information in a hue range grouped by the grouping means.

7. The information processing apparatus according to claim 6, wherein the sixth 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.

8. The information processing apparatus according to claim 7, wherein the sixth color is a color obtained by correcting the lightness of the fourth color based on the color difference between the first color and the second color.

9. The information processing apparatus according to claim 8, wherein the sixth color is a color obtained by setting the lightness of the fourth color to a value obtained by adding the color difference between the first color and the second color to the lightness of the third color.

10. The information processing apparatus according to claim 7, wherein the sixth color is a color obtained by mapping a color obtained by setting the lightness of the fourth color to a value obtained by adding the color difference between the first color and the second color to the lightness of the third color, within the second color gamut.

11. The conversion means converts a seventh color different from the first color and the second color included in the first color information into an eighth color defined in the second color gamut. The information processing apparatus according to claim 7, wherein the eighth color is a color calculated based on the third color, a ninth color which is a color when the seventh color is converted by the color conversion process before correction of the conversion parameter by the first correction means, and the fourth color.

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

13. The information processing apparatus according to claim 12, wherein the first color is the color with the highest lightness or the lowest lightness among the colors included in the first color information.

14. The information processing apparatus further includes second determination means for determining whether or not two colors are recognized as the same color based on a hue range. The grouping means according to claim 6, wherein the grouping means groups colors determined to be the same color by the second determination means.

15. The information processing apparatus according to claim 14, wherein the second determination means recognizes colors in a hue range from 30 degrees to 60 degrees as the same color.

16. The information processing apparatus according to claim 1, further comprising second correction means for correcting the correction amount of the conversion parameter by the first correction means based on a ratio between the total number of combinations of colors included in the first color information and the number of combinations of colors whose color difference after conversion by the color conversion process is smaller than the predetermined threshold value among the colors included in the first color information.

17. The information processing apparatus according to claim 1, wherein the specific color includes a plurality of colors.

18. The information processing apparatus according to claim 1, wherein the acquisition means acquires first color information from an image of a partial region in the image.

19. The information processing apparatus according to claim 18, wherein the partial region is a region constituted by one or more of divided regions obtained by dividing the image into a plurality of regions.

20. The information processing apparatus according to claim 1, further comprising: correcting conversion parameters in the color conversion process such that when the first color is included in the specific color, a color obtained by converting the second color becomes a sixth color, and a color obtained by converting the first color becomes the first color.

21. An acquisition means for acquiring first color information from an image including a pixel representing color information of a first color defined in a first color gamut and a pixel representing color information of a second color defined in the first color gamut; A step of setting second color information indicating a specific color; A step of performing a color conversion process of converting the first color into a third color defined in a second color gamut and converting the second color into a fourth color defined in the second color gamut on the image; When a color difference between the third color and the fourth color is smaller than a predetermined threshold value, When the first color is not included in the specific color, correcting conversion parameters in the color conversion process such that a color obtained by converting the first color becomes a fifth color defined in the second color gamut, the color difference between which and the fourth color is larger than the color difference between the third color and the fourth color; When the first color is included in the specific color, correcting conversion parameters in the color conversion process such that a color obtained by converting the second color becomes a sixth color defined in the second color gamut, the color difference between which and the fourth color is larger than the color difference between the third color and the fourth color; An information processing apparatus, characterized by comprising the above.

22. A program for causing a computer to function as each means of the information processing apparatus 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