Information processing apparatus, information processing method, and program

The information processing apparatus addresses color degradation and conversion issues in existing color mapping technologies by performing targeted color conversion processes that minimize color conversion effects and prioritize absolute color tone retention, enhancing color accuracy and user-defined priorities in printing.

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

Patent Information

Application Number
JP2023201022
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, often result in color degradation and decreased saturation for colors reproducible by a printer, and may not effectively reduce color conversion effects or prioritize absolute color tone retention.

Method used

An information processing apparatus that acquires color information from an image, determines whether the color information includes specific colors, and performs color conversion processes to minimize color conversion effects while emphasizing the retention of absolute color tones based on user priorities.

Benefits of technology

The solution enables effective color mapping to a printing color gamut, reducing color conversion effects and emphasizing the retention of absolute color tones, thus improving color accuracy and user-defined priorities in printing.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025086756000001_ABST
    Figure 2025086756000001_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 attach importance to holding of the absolute hue.SOLUTION: For an image acquired from 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, when first color information does not include second color information, an information processing apparatus converts a 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 first color information includes the second color information, the information processing apparatus converts the first color into a fifth color defined by the second color gamut and converts the second color into a sixth 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, the information processing apparatus corrects a conversion parameter so that a color obtained by converting the first color becomes a seventh color different from the third color 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 manuscript described in a predetermined color space, performs mapping for 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 manuscript. 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 manuscript. 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. There are multiple requirements in color mapping, such as reduction of color degradation and retention of color tone, depending on the user and the environment, but only some of these requirements could be satisfied in these patent documents.

[0005] An object of the present invention is to enable color mapping to a printing color gamut so that the degree of color conversion caused by color conversion is reduced, and to enable emphasis on the retention of absolute color tone in color mapping depending on priorities.

Means for Solving the Problems

[0006] 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 first color information of a first color defined in a first color gamut and a pixel representing second color information of a second color defined in the first color gamut, first determination means for determining whether or not the acquired first color information includes the second color information, and when the first color information does not include the second color information with respect to the image, a first 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 is executed, and when the first color information includes the second color information, a first conversion means for executing a second color conversion process of converting the first color into a fifth color defined in the second color gamut and converting the second color into a sixth color defined in the second color gamut, and when a color difference between the third color and the fourth color becomes smaller than a predetermined threshold value, first correction means for correcting a conversion parameter in the first color conversion process so that a color obtained by converting the first color becomes a seventh color different from the third color and having a larger color difference from the fourth color than the color difference between the third color and the fourth color.

Advantages 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 it is also possible to emphasize the retention of absolute color tone in color mapping depending on priorities.

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

Mode for Carrying Out the Invention

[0009] Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. Note that the following embodiments do not limit the invention according to the claims. Although a plurality of features are described in the embodiments, not all of these plurality of features are essential to 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 as follows in advance.

[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 representing 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, known interpolation operations such as tetrahedral interpolation or cubic interpolation are 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 for use.

[0013] Regarding 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] [Gamut 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 referred to as gamma mapping, and a 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 to 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 to RGB values or CMYK values specific to the image forming apparatus.

[0016] [Original manuscript data] The original manuscript 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 manuscript data may be held as image data or may be expressed as a drawing command. When the original manuscript data is expressed as a drawing command, rendering may be performed and the data may be converted to 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 information representing a color include RGB values, CMYK values, K values, CIE-L*a*b* values, HSV values, or HLS values.

[0017] [Color difference reduction, color degradation] In this 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 "color difference reduction". When color difference reduction occurs, it is conceivable that what was recognized as different colors before mapping is recognized as the same color after mapping due to the reduction of the color difference after mapping. In the following, the occurrence of color difference reduction and the color difference after conversion being less than a predetermined threshold will be referred to as "color degradation". The threshold value used here will be described later.

[0018] Hereinafter, a specific example of color degradation will be given and described. Here, assume 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 degradation. When color degradation 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 uses different colors to recognize different items, if different colors are recognized as the same color due to color degradation, there is a possibility of misrecognizing different items as the same item.

[0019] In this embodiment, any color space may be used as the predetermined color space for calculating the distance between colors. For example, the sRGB color space, Adobe RGB color space, CIE-L*a*b* color space, CIE-LUV color space, XYZ 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 and executing it. For example, the CPU 102 acquires a command based on 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 dedicatedly designed electric 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 print 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 capable of executing 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 may be stored 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 those 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 each process 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.

[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 its 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 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 print medium. The recording head 115 scans over the print medium and forms an image by simultaneously ejecting ink droplets onto the print medium.

[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 gravity direction (the -Z direction in the figure) based on the recording data. Thereby, an image for 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 for 1 / N of the main scan. By these operations, 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] Depending on the user or environment that executes printing, etc., the priorities in printing vary. For example, when printing, cases such as emphasizing the discriminability of colors after printing (wanting to reduce the degree of color fading) or wanting to maintain the absolute color tone of the printing object can be considered. When emphasizing the discriminability of colors, it is conceivable to correct the conversion parameters so that colors that are recognized as the same color when color fading occurs become different colors. When printing a graph that differentiates items by color as described above, by correcting the conversion parameters so that color fading is reduced, it is possible to easily maintain the discriminability of colors after printing. Also, for example, when printing something like corporate colors that evoke the company just by the color itself, since the absolute color tone of such colors is important, it is considered to create print data so that such colors are retained as much as possible.

[0036] From such a perspective, the information processing apparatus 101 according to the present embodiment determines whether the input image includes a color (absolute color) that is set to be important in terms of such an absolute color tone, and selectively changes the color conversion process according to the determination. In particular, when it is determined that the input image does not include the above-described absolute color, the information processing apparatus 101 can perform a mapping process (first color conversion process) described later with reference to FIG. 4, etc. as a color conversion process in order to reduce the degree of color fading. Also, when it is determined that the input image includes the absolute color, the information processing apparatus 101 can execute an absolute gamma mapping (second color conversion process) described later as a color conversion process, emphasizing the absolute color tone rather than color fading.

[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 due to color conversion. The processing in FIG. 2 is realized, for example, by the CPU 102 reading out a program stored in the storage medium 104 into the RAM 103 and executing it. Also, 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 manuscript data used for printing. In the present embodiment, it is assumed that the manuscript data stored in the storage medium 104 is acquired, but manuscript data may be input from an external device via the transfer I / F 106. Next, the CPU 102 acquires image data including color information from the acquired manuscript data. The CPU 102 according to the present embodiment acquires a value representing a 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 color system data, xyY color system data, HSV data, or HLS data is used.

[0039] Note that the manuscript data used here acquires, as the manuscript data, an image including a pixel including color information of a first color and a pixel including 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 in each process as unique colors (here, color 403 and color 404) described later with reference to FIG. 4 and the like, 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 the color information obtained from the manuscript data acquired in S101 contains predetermined color information (here, information indicating absolute color as described above). The setting of this predetermined color information will be described later. If it is determined that the predetermined color information is included, the process proceeds to S106; otherwise, the process proceeds to S103.

[0041] In S103, the CPU 102 performs color conversion on the image data using the conversion parameters stored in the storage medium 104 in advance. 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 lookup table as the gamma mapping table. The CPU 102 can calculate the combination of output pixel values (Rout, Gout, Bout) by gamma mapping for the 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, a table Table1

[0256]

[0256]

[0256] [3] with a total of 16,777,216 sets of output values can be used as the gamma mapping table. The color conversion process may be realized, for example, by performing the processes shown in the following formulas (1) to (3) on each pixel of the image composed of the RGB pixel values of the image data input in S101. Rout = Table1[Rin][Gin][Bin][0] ··· (Formula 1) Gout = Table1[Rin][Gin][Bin][1] ··· (Formula 2) Bout = Table1[Rin][Gin][Bin][2] ··· (Formula 3)

[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 (e.g., to 16 grids) so that the table values of multiple 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, based on the image data input in S101, the image data after gamma mapping performed in S103, and the gamma mapping table, the CPU 102 creates a table after color fade correction. The format of the table after color fade correction is the same as the format of the gamma mapping table. The process performed in S104 and the table after color fade correction will be described later with reference to FIGS. 3 and 4.

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

[0046] In S106, which is a process executed when it is determined that predetermined color information is included, the CPU 102 performs absolute gamma mapping, which is gamma mapping in a form that retains the predetermined color information as much as possible. The absolute gamma mapping according to the present embodiment is a process in which, for the output, the part that can match the color represented by the sRGB pixel value of the input color photometrically is made to match, and for the pixel values outside the print color gamut that cannot match photometrically, they are mapped to the closest color within the print 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 S106 ends, the process proceeds to S107.

[0047] In S107, the CPU 102 outputs the color degradation corrected image data stored in S105 to the information processing device 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 a mapping from the color in the sRGB color space to the color in the color reproduction 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 gamut of the image forming apparatus 108. Also, in the gamma mapping, parameter selection that emphasizes gradation reproduction may be performed.

[0048] Hereinafter, with reference to FIG. 3, the color degradation corrected table created in S104 will be described. FIG. 3 is a flowchart showing an example of the process for creating the color degradation corrected table in S104. 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.

[0049] 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 RGB component, and the content of the unique color may vary according to the color detection method. The unique color list is initialized at the start of S201. The CPU 102 repeats the detection process of the unique color for each pixel of the image data, and determines for all the pixels included in the image data whether the color of each pixel is different from the unique colors detected so far. By such a process, the color determined to be a unique color is stored as a unique color in the unique color list.

[0050] 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 of 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.

[0051] In S202, the CPU 102 detects a color combination 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 a plane using 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.

[0052] 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, when the color difference 408 is smaller than the color difference 407 between color 403 and color 404, it is determined that color degradation has occurred. 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 the 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.

[0053] 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 on 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 a known color space conversion technique, 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

[0054] The CPU 102 determines that color degradation occurs when the color difference ΔE408 is less than the threshold value. Based on the identification 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.

[0055] In S203, the CPU 102 determines whether 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.

[0056] 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, for example, when 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.

[0057] 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.

[0058] The color degradation correction performed by the CPU 102 according to this embodiment will be described in detail with reference to FIG. 4. In FIG. 4, it is determined that color degradation occurs in the color combination of color 403 and color 404. Therefore, the CPU 102 corrects the conversion parameters used in the color conversion process so that the color difference after the color conversion of 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 the 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 distinguish different colors based on human visual characteristics, and corrects the conversion parameters of the color conversion process so that the color difference after the conversion of two colors becomes such a color distance.

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

[0060] The process of color degradation correction is repeated for all combinations of colors in which color degradation occurs. The results of color degradation 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 in which the corresponding parameters are corrected in this way is used as the table after color degradation correction. 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 convert the color information stored in the table after color degradation correction into the color in the color space of the input image data and the image data at the time of output and then store it. 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 table after color degradation correction.

[0061] Next, the process of such color degradation correction will be described in detail. The CPU 102 obtains a color difference correction amount 409 necessary for making the color difference ΔE408 after conversion into a distinguishable color distance. In the present embodiment, the distinguishable color 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. Also, the CPU 102 may calculate the color difference correction amount 409 as the difference between the color difference ΔE407 and the color difference ΔE408.

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

[0063] 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 after conversion between the two colors is the distinguishable 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 those before correction. In the example of FIG. 4, when attempting to correct color 406 by the color difference correction amount 409 on the extension line from color 405 to color 406 in the CIE-L*a*b* color space, it goes outside the color gamut 402 and such correction cannot 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 the color gamut 402 and the color distance from color 405 is the distinguishable color distance. Here, if the color distance between the two colors after conversion does not reach the distinguishable color distance by only changing the color after conversion of color 404, the shortfall to the distinguishable color distance may be compensated by correcting the conversion parameters so as to change the color after conversion of color 403.

[0064] In S206, the CPU 102 corrects the gamma mapping table using the result of the color degradation correction in S205 to obtain a table after color degradation correction. Here, the gamma mapping table before correction is a table that converts the input color, color 403, to the output color, color 405, and the table after color degradation correction is a table that converts the input color, color 403, to the output color, color 410. From the result of S205, the output color of the input color, color 403, is changed to a table that converts to color 410. The correction of the gamma mapping table is repeatedly executed for all combinations of colors that cause color degradation. By such processing, a table after color degradation correction is created.

[0065] According to the process shown in FIG. 3, after creating a color 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 by conversion.

[0066] 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, an adaptive degradation correction table can be created for the input image data. Therefore, it is possible to execute a color conversion process with a reduced degree of color degradation by gamma mapping suitable for the input image data.

[0067] In this embodiment, the process in the case where the input image data is a single-page image has been described, but 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 a process, even when the input image data has multiple pages, it is possible to selectively change the color conversion process in the same manner and reduce the degree of color degradation when color degradation occurs.

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

[0069] Also, in this embodiment, the processes shown in FIGS. 2 and 3 are assumed to be started automatically in response to receiving an input of image data, but 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 degenerate correction after table is displayed by ON and OFF. 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.

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

[0071] 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 absolute colors (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.

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

[0073] An absolute color information list storing information indicating registered absolute colors is displayed within the absolute color information list display section 1602. 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.

[0074] 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).

[0075] The registration / deletion dialog 1603 is used to set absolute colors. When information indicating a color is input by the user into the registration / deletion dialog 1603 and the registration button is further pressed, the CPU 102 according to the present embodiment sets the input color as an absolute color. 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 said 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 has not been pressed.

[0076] In the registration / deletion dialog 1603, a color name, absolute color values (R value, G value, B value), and an input field 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, no new absolute color is set.

[0077] Note that the registration / deletion dialog 1603 may be used to change or delete information on already registered absolute colors. For example, when a 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), information on 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 presses the "registration" button, the absolute color information is updated, and when the "deletion" button is pressed, the information on the registered absolute color is deleted from the absolute color information list.

[0078] 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 the 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.

[0079] FIG. 17 is a diagram for explaining an example of setting whether to hold an already registered absolute color at the time of 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.

[0080] 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 as to whether to hold the corresponding absolute color, and when a hold input is received, sets to hold the absolute color at the time of printing. In the example of FIG. 17, in response to the pressing of the "absolute color setting" button for the F green registered as the second color, 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.

[0081] According to such a configuration, it is possible to selectively change the color conversion process according to the determination as to whether the input image includes a predetermined color. Therefore, the color conversion process can be selected according to the user's priorities in printing. In particular, when the absolute color is set as shown in FIGS. 16 to 17, in S102, it is determined whether the color information obtained from the original data includes the absolute color set as such, and the conversion process is selectively changed according to the result of the determination.

[0082] In the examples of FIGS. 16 and 17, since the only color retained as an absolute color is "C red", in S102, it is determined whether the manuscript data contains the color that is C red. Also, here, if in addition to C red, F green is also set to be retained as an absolute color, in S102, it is determined whether the manuscript data contains either C red or F green. Further, if there is no absolute color set to be retained, the process proceeds to S103 regardless of the result of the determination in S102.

[0083] According to such a configuration, it is possible to set an absolute color assuming that the absolute color tone is important, and selectively change the color conversion process according to whether the set absolute color is included in the input image.

[0084] Note that in the determination in S102 of FIG. 2, it was explained that the determination condition is whether the input manuscript data contains even one pixel of the absolute color. On the other hand, for example, when there is an area containing an absolute color accidentally in the image, it may be considered that there is no need to execute the gamut mapping that retains such an absolute color. From such a viewpoint, the CPU 102 may determine in S102 that the input manuscript data contains the predetermined color information when the number of pixels indicating the absolute color in the input manuscript data satisfies a predetermined condition.

[0085] For example, the CPU 102 may be such that the above-mentioned predetermined condition is satisfied when the number of pixels indicating the absolute color exceeds a predetermined number of pixels N (which can be arbitrarily set). Also, for example, the CPU 102 may be such that the above-mentioned predetermined condition is satisfied when the number of pixels indicating the absolute color exceeds a predetermined percentage T% (which can be arbitrarily set) of the total number of pixels of the manuscript data.

[0086] For example, the CPU 102 may also be configured such that the above-described predetermined conditions are satisfied when a region (absolute color region) composed of pixels indicating absolute colors satisfies a predetermined size condition. In this case, for example, the CPU 102 may be configured such that the predetermined conditions are satisfied when each of a value obtained by subtracting the minimum X coordinate value from the maximum X coordinate value of the pixels included in the absolute color region and a value obtained by subtracting the minimum Y coordinate value from the maximum Y coordinate value exceeds a predetermined threshold value.

[0087] [Embodiment 2] [Repulsion Correction 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 significantly different hues. Therefore, the information processing apparatus 101 according to Embodiment 2 groups a part corresponding to the hue range among the plurality of detected 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.

[0088] The information processing apparatus 101 according to the present embodiment can group the detected unique colors, for example, 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 for that part, it is possible to reduce the processing load and processing time by reducing the number of combinations to be calculated.

[0089] Also, in the present embodiment, when performing color fade correction, the color fade correction may be performed so that the change due to the color fade correction of the converted color occurs only in the lightness direction. By making the change in the color after color conversion by correcting the conversion parameters occur only in the lightness direction, it is possible to suppress the change in hue 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 saturation does not change from before the correction.

[0090] When the color difference ΔE before gamma mapping is larger than the minimum distinguishable color difference, the color difference ΔE to be retained only needs to be larger than the minimum distinguishable color difference ΔE. In such a case, in the color conversion by gamma mapping, it is conceivable to set the conversion parameters so that the color difference between the two colors after conversion 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 color. By the color fade correction, the color difference between the two colors after gamma mapping becomes the color difference before gamma mapping, so that it is possible to reproduce the ease of discrimination before gamma mapping even after performing the color conversion. Note that the color difference after gamma mapping after such color fade correction may be larger than the color difference before gamma mapping. In this case, after performing the color conversion, it is possible to make the discrimination between the two colors easier than before gamma mapping. Hereinafter, the correction process of such conversion parameters will be described.

[0091] Hereinafter, 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. 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 a range from 0 degrees to 60 degrees. The hue range used for grouping is preferably a hue range that can be recognized as the same color and can be arbitrarily set by the user. For example, in the CIE-L*A*B* color space, the hue range 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 it is grouped and divided into six color groups of red, green, blue, cyan, magenta, and yellow. When this angle is 30 degrees, it can also be divided by the colors between the colors grouped at 60 degrees.

[0092] 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 is determined so as to be visually evenly (the same color) visible, and the unique colors may be grouped within the set range of the hue angle.

[0093] Also, in this embodiment, it is described that color degradation correction processing is performed using unique colors within one group grouped using the hue angle. However, it is also possible to perform calculation processing for the number of combinations in which color degradation occurs as described later, using 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 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 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.

[0094] The CPU 102 calculates the number of color combinations in which color degradation occurs for unique color combinations 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 this 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 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. Detection of color combinations in which color degradation occurs can be performed in the same manner as in Embodiment 1. In the following, when explaining color combinations (two colors), it is assumed that the explanation is for combinations within one hue range unless otherwise specified.

[0095] 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 colors 603 and 601, the converted color 612 (or color 614) of the color 601 by the degenerate correction gamma mapping is calculated, and such processing will also be described later.

[0096] 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 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 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. Further, 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.

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

[0098] The above-mentioned correction rate R becomes smaller as the ratio of the color combinations in which color degradation occurs within the group becomes smaller, and becomes larger as it becomes larger. 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 these 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 becomes larger.

[0099] The CPU 102 according to this embodiment can set the above-mentioned reference color from among the unique colors included in the group. In this embodiment, 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.

[0100] In color degradation correction, the CPU 102 according to this embodiment generates corresponding lightness conversion functions for unique colors (light color group) whose lightness is equal to or higher than the lightness of the maximum chroma color and 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 performed by the CPU 102 according to this embodiment will be described.

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

[0102] 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 respective color differences ΔE608 and ΔE609 by R.

[0103] 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.

[0104] 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.

[0105] Figure 7 is a graph showing an example of the components of the brightness conversion table according to this embodiment. 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 in the graph of Figure 7 will be described.

[0106] 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.

[0107] 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 degradation 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 the correction of the conversion parameter can be suppressed. Also, since the sensitivity to 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 again into the lightness difference, it becomes possible to effectively utilize a narrow color gamut.

[0108] On the other hand, as illustrated in FIG. 7, it is also conceivable that the color 612 converted in this way goes out of 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 degradation correction. The color difference minimum mapping will be described later with reference to Expressions (10) to (14).

[0109] 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 having a value larger 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)

[0110] L 1 Using such a value L as the 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 degeneracy correction in this embodiment.

[0111] 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.

[0112] In this embodiment, as described above, L607 of the reference color does not change due to the 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 converted color. Also, when a lightness greater than L605 or less than L606 is input to the lightness conversion table, the output value is undefined 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.

[0113] Also, when the brightness value output by conversion using 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, overall correction can be performed so as to utilize the brightness gradation on the low brightness side. Regarding the minimum brightness color, when the minimum brightness after correction is lower than the minimum brightness of the color gamut after gamma mapping, the same processing can be performed for the case where the brightness value output by conversion using the brightness conversion table exceeds the minimum brightness of the color gamut 616 after gamma mapping.

[0114] The CPU 102 according to the present embodiment creates a degenerate correction table for each hue range by correcting the gamma mapping table using the values of the brightness conversion table calculated in this way. 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.

[0115] In the present embodiment, a brightness conversion table is created for each hue range. However, when performing processing using different tables for each such hue range, a sharp change may occur in the output value depending on whether 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 a hue angle of Hn degrees (here, assume it is 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

[0116] 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, a sharp change in the output value at the boundary of the hue range due to gamma mapping can be suppressed.

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

[0118] For example, the CPU 102 can convert color 612 into the color closest to color 612 among the colors within the color gamut 616 located in a predetermined direction from 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

[0119] Here, the color before conversion by minimum color difference mapping is represented as (Ls, as, bs), and the color after conversion is represented as (Lt, at, bt). Also, as the weight for setting the above-mentioned 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 after conversion by minimum color difference mapping is determined.

[0120] Here, the values of Wl, Wc, and Wh can be arbitrarily set by the user. In Embodiment 2, since the degenerate correction table is created such that the change due to the color degenerate 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 saturation direction), the change in the color tone before and after the color degenerate correction can be suppressed. For example, the relationship between these weights can be set as Wh > Wl > Wc to perform color difference minimum mapping.

[0121] Note that in the color difference minimum mapping, the explanation was given 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 degenerate correction, such as color 612, into the color gamut is not particularly limited in this way. For example, color 612 may be moved into the color gamut 616 with the minimum moving distance so that the distance from color 607 is maintained, and the resulting color may be set as color 614 to be the converted color of color 601 after the color degenerate correction.

[0122] In this embodiment, an example of performing color degenerate correction has been described such that the change due to the color degenerate 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 saturation. For example, the lightness difference between low-saturation colors tends to be more sensitive than the lightness difference between higher-saturation colors of such colors. From such a viewpoint, the CPU 102 according to this embodiment may perform control such that the amount of change in the lightness direction of the color after the color degenerate correction further varies depending on the saturation value. Here, the colors are classified into low-saturation colors and high-saturation colors, and for high-saturation colors, the processing is performed as described with reference to FIG. 6 and the like, and for low-saturation colors, the processing is performed such 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 degenerate correction performed such that the amount of change in the lightness direction becomes smaller for the colors determined to be such low-saturation colors.

[0123] 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 brightness value Lc' obtained by linearly interpolating the brightness value Ln before such correction and the brightness value Lc after correction with the saturation correction rate S is set as the brightness value of the output of the degenerate correction table. The saturation correction rate S is calculated by the following formula (15) using the saturation value Sn of the output value of the gamma mapping and the maximum saturation value Sm of the color gamut after gamma mapping at the hue angle of the output value of the gamma mapping. Also, Lc' is calculated by the following formula (16). S = Sn / Sm Formula (15) Lc' = S × Lc + (1 - S) × Ln Formula (16)

[0124] Here, the condition for classifying colors into low saturation and high saturation is 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 saturation, and colors with a saturation equal to or higher than the threshold value may be defined as high saturation, and colors with a saturation lower than the threshold value may be defined as low saturation. Alternatively, for example, the lower half of the detected saturations may be defined as low saturation and the remaining as high saturation. Also, the CPU 102 may perform color degenerate correction so that the amount of change in the color after conversion is zero for low-saturation colors.

[0125] According to such processing, color degenerate 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 degenerate correction can be suppressed.

[0126] [Embodiment 3] [Hue Repulsion] 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 degenerate correction so that such a brightness difference becomes large.

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

[0128] Hereinafter, with reference to FIG. 8, an example of the determination process of whether or not brightness degradation occurs, which is performed by the information processing apparatus 101 according to the present embodiment in S202, will be described. In the present 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 degradation. Further, the CPU 102 according to the present embodiment determines that color degradation has occurred when brightness degradation has occurred.

[0129] In S202, the CPU 102 detects a combination of colors in which brightness degradation occurs among 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 process described below is repeated for all combinations of unique colors included in the image data.

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

[0131] 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 equal to or less than a predetermined threshold value, the CPU 102 determines that there is not enough difference to distinguish those colors and that brightness degradation has occurred.

[0132] 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.

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

[0134] The CPU 102 according to this embodiment can calculate a correction rate T, which is the reflection rate of the correction of the conversion parameter 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)

[0135] 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 the 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 that cause lightness degradation increases.

[0136] Next, the CPU 102 performs lightness difference correction based on the correction rate T and the lightness before gamma mapping. The lightness Lc after the 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)

[0137] 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, the reduction in discriminability can be reduced.

[0138] Note that the reduction process for lightness degradation according to this embodiment may be performed simultaneously with the process according to Embodiment 2. In that case, the lightness difference correction process is performed with respect to the reference color of the color degradation correction process. Along with correcting the lightness difference of the reference color, it is also possible to process the lightness 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 lightness degradation.

[0139] [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.

[0140] For example, the meaning of the color in identification may be different between the color used in the graph and the color used as part of the gradation. For example, for the color used in the graph, since the distinguishability from other colors in the graph is important, it is conceivable to perform color degradation correction with a relatively strong degree of color degradation correction. On the other hand, for the color used as part of the gradation, since the gradation with the colors of surrounding pixels is important, it is conceivable to perform color degradation correction with a relatively weak 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 color degradation correction with a relatively strong degree of color degradation correction for the color of the graph and color degradation correction with a relatively weak degree of 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.

[0141] Similarly, even for a color that wants to maintain an absolute color tone such as corporate color, there are cases where color retention as an absolute color is not necessary, such as when it is used only for a few pixels during the gradation. Therefore, if the absolute gamma mapping in S106 is performed only on the condition that there is an absolute color registered in the manuscript, unintended color degradation correction may be performed, such as impairing the gradation harmony.

[0142] The information processing apparatus 101 according to the present embodiment sets a plurality of partial regions in the image data, and performs the processing after S102 in Embodiment 1 for each of these partial regions. That is, the information processing apparatus 101 according to the present embodiment selectively changes the color conversion processing 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.

[0143] FIG. 9 is a flowchart showing an example of the overall processing performed by the information processing apparatus 101 according to the present embodiment. The processing shown in FIG. 9 is performed in the same manner as the flowchart shown in FIG. 3 of Embodiment 1, except that S301 to S302 following S101 and S303 following S105 and S106 are additionally performed, and thus duplicate explanations are omitted.

[0144] 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 the present 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 the partial regions.

[0145] S303 to S308 are loop processes that target one of the partial regions set in S302. 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 S106 shown in FIG. 9, the same processing as that in FIG. 3 is performed on the processing target set in S302.

[0146] In S308 following S105 or S106, 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 S107; otherwise, the process returns to S302.

[0147] The setting process of the partial areas 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, the following three types of 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)

[0148] 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.

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

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

[0151] 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, 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.

[0152] 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.

[0153] 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 text size is 18 points, and the character string to be described is "ABCDEFGHIJKLMNOPQR".

[0154] The 4th 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".

[0155] The 6th 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".

[0156] The 8th 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). 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 been recognized and applied as a substantial industry standard in the printing industry, it may be described using the name of its substantial industry standard (such as Pantone color name).

[0157] The IMAGE instructions on the 9th and 10th lines are drawing instruction 1 (IMAGE instruction) that describes 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 represents 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.

[0158] 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 becomes blank.

[0159] As described above, the CPU 102 according to this embodiment may set the partial area based on the information possessed by 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 possessed by 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

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

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

[0162] 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 as described above and sets sub-regions, 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.

[0163] FIG. 11 is a flowchart showing an example of detailed processing when performing the setting process of the partial area in S301 in tile units. In S401, the CPU 102 sets unit tiles (hereinafter, this 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) composed of 30 pixels each vertically and horizontally. In order to set such unit tiles, here, a variable for setting an area number for each tile is set as Area_number

[20]

[27] .

[0164] FIG. 12 is a diagram showing an image of tile setting of 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 figure 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 may be referred to as tile (x, y) indicating the x-th tile from the left and the y-th tile from the top.

[0165] In S402, the CPU 102 determines whether each tile is a blank tile. Here, if the tile has no overlapping object, it is determined to be a blank tile, and if not, 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 with all pixel values R = G = B = 255 in the actual unit tile 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.

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

[0167] 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 For the maximum value of the area number, max_area_number = 0

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

[0169] In S404, the CPU 102 detects a tile whose area number is "-1". Here, for the range of x = 0 to 19 and y = 0 to 26 for the tile (x, y), the CPU 102 makes the following determination. When a tile with an area number of "-1" is first detected, or when the detection process has been 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

[0170] 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.

[0171] In S406, the CPU 102 increments the maximum value of the area number by +1, and sets the area number of the tile detected as the area number "-1" to the updated maximum value of the 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

[0172] 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 value of the area number is "1", and thus the area number of the tile becomes "1". After that, each time S406 is executed again, the maximum value of the area number increases by 1.

[0173] Subsequently, in S407 to S409, a process of expanding continuous non - blank areas as the same area is performed. In S407, the CPU 102 detects an adjacent tile of a tile with the area number equal to the maximum value of the area number and having the area number "-1". Specifically, for tiles (x, y) in the range of x = 0 to 19 and 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 target for processing and the process proceeds to S408. if (area_number[x][y] == max_area_number) if ((area_number[x - 1][y] == -1) or (area_number[x + 1][y] == -1) or (area_number[x][y - 1] == -1) or (area_number[x][y + 1] == -1)) → detected else → not detected

[0174] 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.

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

[0176] 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. Then, 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".

[0177] In S410, the CPU 102 sets the maximum region number as the number of regions and ends the process shown in FIG. 11. That is, the maximum region number set so far becomes the number of regions existing in the manuscript page.

[0178] FIG. 13 is a diagram showing each tile region after the region setting is completed. The manuscript page 1300 in FIG. 13 represents the entire manuscript page corresponding to the manuscript page 1200. Region 1301 in FIG. 13 is a region where text is drawn, region 1302 is a region where a figure is drawn, region 1303 is a region where image data is drawn, and region 1304 is a region where no object is drawn. Here, the result of the region setting is as follows. · Number of regions = 3 · Region number = 0 Blank region 1304 · Region number = 1 Text region 1301 · Region number = 2 Box region 1302 · Region number = 3 Image region 1303

[0179] In the example shown in FIG. 13, each region 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 region. By doing so, even when a region 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 regions, it is possible to separately apply processing using the degenerate correction table and processing using the absolute color gamut mapping table to each of them.

[0180] 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 result of "output with different colors" is easy to perceive when performed on the same color existing spatially adjacent or in extremely close locations, and difficult to perceive when performed on the same color existing in spatially separated locations.

[0181] 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 with a background color (for example, white, black, or gray) in between. 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 regions composed of corporate colors, etc., exist close to other regions, it is also possible to separately apply the process using the degenerate correction table and the process using the absolute color gamut mapping table.

[0182] 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 object of a non-specific type contains the predetermined color information. 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 region containing 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.

[0183] Note that 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.

[0184] 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.

[0185] 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 feature, registration / deletion of other names is also possible), and an attribute type color correction setting (character / line drawing, photograph, or special feature). In the example shown in FIG. 18, two modes, standard (character / line drawing = adaptive, photograph = fixed, special feature = adaptive) and special feature (character / line drawing = adaptive, photograph = fixed, special feature = 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 Feature Mode".

[0186] 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 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.

[0187] 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.

[0188] 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 S106. 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.

[0189] 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".

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

[0191] In the PDL shown in FIG. 10 according to this embodiment, for characters / lines, photographs, 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) · Photographs are objects of IMAGE commands · With the TEXT command and BOX command, objects with a color specified as a spot color

[0192] As a result, each region in FIG. 13 is · Region 1301 → Characters / Lines · Region 1302 → Spot color · Region 1303 → Photograph and is determined as such. As a result, the color correction for each region is · Region 1301 → Characters / Lines → Adaptive · Region 1302 → Spot color → Color retention · Region 1303 → Photograph → Fixed and becomes like this.

[0193] In actual processing, when a region is composed of multiple drawing commands, if there is at least one object determined as a spot color in the region, all objects in the region 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 regions. In this case, the color degradation correction set as suitable for each object will be applied.

[0194] According to such a configuration, a plurality of partial regions can be set in the image data, and the selection of color conversion processing can be performed for each of them. In particular, regardless of whether a predetermined color information is included in those partial regions, the color conversion processing can be selectively changed according to whether the type of the partial region is a specific type. Also, according to this processing, even for separated objects, if they have the same color distribution and are of the same type, the same color degradation correction can be performed. Also, by performing the color degradation correction processing for each partial region in this way, the number of color combinations to be the target of the color degradation correction processing can be limited, and the processing speed can be improved.

[0195] In addition, in the present embodiment, the description has been given on the assumption that the information of the object is included in the manuscript data (as described with reference to FIG. 10). However, if 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 detection processing of the object in the image can be executed by a known object recognition technique using, for example, a neural network.

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

[0197] 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 gamma mapping table after degeneracy correction. For example, assume that the document data is composed of pages from page 1 to page 3. If each page is to be the target for creating a separate mapping table, then page 1, page 2, and page 3 each become a partial page. Also, if page 1 and page 2, and page 3 are each to be the target for creating a mapping table, then "page 1 and page 2" and "page 3" become partial pages. That is, the CPU 102 can selectively change the color conversion processing for each such partial page and for each partial area.

[0198] 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 may be regarded as a "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 also be specified by the user.

[0199] 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 first determination means for determining whether or not the acquired first color information includes the second color information; With respect to the image, When the first color information does not include the second color information, a first 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 is executed; When the first color information includes the second color information, a first conversion means for executing a second color conversion process of converting the first color into a fifth color defined in the second color gamut and converting the second color into a sixth 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, a first correction means for correcting the conversion parameter in the first color conversion process so that the color obtained by converting the first color has a color difference from the fourth color larger than the color difference between the third color and the fourth color and is a seventh color different from the third 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 represented 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) Further comprising a grouping means for grouping the colors included in the image according to a 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 a hue range grouped by the grouping means. (Item 7) The sixth color is the same color as the fourth color, The information processing apparatus according to Item 6, characterized in that the fifth color is a color calculated based on the third color, the fourth color, and the color difference between the first color and the second color. (Item 8) The information processing apparatus according to item 7, wherein the fifth color is a color obtained by correcting the lightness of the third 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 fifth color is a color obtained by setting the lightness of the third color to a value obtained by adding the color difference between the first color and the second color to the lightness of the fourth color. (Item 10) The information processing apparatus according to item 7, wherein the fifth color is a color obtained by mapping a color obtained by setting the lightness of the third color to a value obtained by adding the color difference between the first color and the second color to the lightness of the fourth color, within the second color gamut. (Item 11) The first conversion means converts an eighth color different from the first color and the second color included in the first color information into a ninth color defined in the second color gamut, The information processing apparatus according to item 7, wherein the ninth color is a color calculated based on the sixth color, the fifth color, and a tenth color which is a color when the eighth color is converted by the first color conversion process. (Item 12) The information processing apparatus according to item 7, wherein the second color is the color with the highest saturation 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 within a hue range of 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 for which the color difference after conversion by the first 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 information processing apparatus according to item 1, wherein the third color is a color different from the fifth color. (Item 18) The information processing apparatus according to item 1, wherein the second color information includes a plurality of colors. (Item 19) The information processing apparatus according to item 1, wherein the acquisition means acquires first color information from an image of a partial region in the image. (Item 20) The information processing apparatus according to item 19, 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. (Item 21) wherein the partial region is a region of an object in the image, further comprising determination means for determining whether or not the object is of a predetermined type, The information processing apparatus according to item 19, wherein the first conversion means executes a second color conversion process of converting the first color into a fifth color defined in the second color gamut and converting the second color into a sixth color defined in the second color gamut when the first color information includes the second color information and it is determined that the object is of a predetermined type. (Item 22) second conversion means for executing a third color conversion process of converting the first color into a ninth color defined in a second color gamut and converting the second color into a tenth color defined in the second color gamut; setting means for setting, based on a user input, whether to convert the first color and the second color by the first conversion means or the second conversion means. The information processing apparatus according to item 1, further comprising (Item 23) A step of obtaining 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 determining whether the obtained first color information includes second color information; With respect to the image, When the first color information does not include the second color information, a first 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 is executed; When the first color information includes the second color information, a step of executing a second color conversion process of converting the first color into a fifth color defined in the second color gamut and converting the second color into a sixth color defined in the second color gamut; When the color difference between the third color and the fourth color becomes smaller than a predetermined threshold value, the conversion parameter in the first color conversion process is corrected so that the color obtained by converting the first color becomes a seventh color different from the third color and having a color difference from the fourth color larger than the color difference between the third color and the fourth color; An information processing method, characterized by comprising (Item 24) A program for causing a computer to function as each means of the information processing apparatus according to any one of items 1 to 22.

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

[0201] The invention is not limited to the above embodiments, and various changes and modifications can be made without departing from the spirit and scope of the invention. Therefore, the claims are attached to disclose the scope of the invention.

Explanation of Signs

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

Claims

1. 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; First determination means for determining whether the acquired first color information includes second color information; With respect to the image, When the first color information does not include the second color information, a first color conversion process is executed 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; First conversion means for executing a second color conversion process to convert the first color into a fifth color defined in the second color gamut and convert the second color into a sixth color defined in the second color gamut when the first color information includes the second color information; First correction means for correcting conversion parameters in the first color conversion process so that when the color difference between the third color and the fourth color is smaller than a predetermined threshold value, the color obtained by converting the first color is a seventh color different from the third color and having a larger color difference from the fourth color than the color difference between the third color and the fourth color; An information processing apparatus comprising the above.

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

3. The information processing apparatus according to claim 1, wherein the predetermined threshold value 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 grouping means for grouping 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 sixth color is the same as the fourth color, The information processing apparatus according to claim 6, wherein the fifth color is a color calculated based on the third color, the fourth color, and a color difference between the first color and the second color.

8. The information processing apparatus according to claim 7, wherein the fifth color is a color obtained by correcting the lightness of the third 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 fifth color is a color obtained by setting the lightness of the third color to a value obtained by adding the color difference between the first color and the second color to the lightness of the fourth color.

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

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

12. The information processing apparatus according to claim 7, wherein the second color is the color having 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 having 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 within a hue range of 30 degrees to 60 degrees as the same color.

16. The information processing apparatus according to claim 1 further includes 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 for which the color difference after conversion by the first color conversion process is smaller than the predetermined threshold value and which are included in the first color information.

17. The information processing apparatus according to claim 1, wherein the third color is different from the fifth color.

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

19. 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.

20. The information processing apparatus according to claim 19, 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.

21. wherein the partial region is a region of an object in the image, further comprising determination means for determining whether the object is of a predetermined type, The information processing apparatus according to claim 19, wherein when the first color information includes the second color information and it is determined that the object is of a predetermined type, the first conversion means performs a second color conversion process of converting the first color into a fifth color defined in the second color gamut and converting the second color into a sixth color defined in the second color gamut.

22. second conversion means for performing a third color conversion process of converting the first color into a ninth color defined in a second color gamut and converting the second color into a tenth color defined in the second color gamut; setting means for setting, based on a user input, whether to convert the first color and the second color by the first conversion means or the second conversion means; The information processing apparatus according to claim 1, further comprising the above.

23. a step of acquiring first color information from an image including a pixel representing the first color information defined in the first color gamut and a pixel representing the second color information defined in the first color gamut; a step of determining whether the acquired first color information includes the second color information; for the image, when the first color information does not include the second color information, performing a first 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; when the first color information includes the second color information, performing a second color conversion process of converting the first color into a fifth color defined in the second color gamut and converting the second color into a sixth color defined in the second color gamut; When the color difference between the third color and the fourth color becomes smaller than a predetermined threshold value, the color obtained by converting the first color is a seventh color different from the third color, and the color difference between the seventh color and the fourth color is larger than the color difference between the third color and the fourth color, a step of correcting conversion parameters in the first color conversion process so as to be; An information processing method, characterized by comprising the above.

24. A program for causing a computer to function as each means of the information processing apparatus according to any one of Claims 1 to 22.

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