Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
DETERMINING A TARGET COLOR VALUE
Document Type and Number:
WIPO Patent Application WO/2022/139804
Kind Code:
A1
Abstract:
A method comprises determining a target CMYK value in a CMYK space by representing the CMYK space as a 1D K subspace, and a 3D CMY subspace indexed with: a depth parameter that can take a plurality of values, each constraining values of C, M and Y with respect to one another to define a respective surface in the CMY subspace; and a 2D coordinate that can take a plurality of coordinate values. Each coordinate value corresponds with a position in the surface defined by a depth parameter value. A first depth parameter value and a first K value are determined which satisfy a first criterion constraining one with respect to the other; and a first coordinate value is determined which, with the first depth parameter value and the first K value, corresponds to a first CMYK value satisfying a second criterion and which is identified as the target value.

Inventors:
VILAR BENITO JORDI (ES)
ARNABAT BENEDICTO JORDI (ES)
COSTA MAJO FRANCISCO (ES)
Application Number:
PCT/US2020/066572
Publication Date:
June 30, 2022
Filing Date:
December 22, 2020
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
HEWLETT PACKARD DEVELOPMENT CO (US)
International Classes:
G06T7/90
Foreign References:
US6888961B12005-05-03
US8179566B22012-05-15
US20060072131A12006-04-06
US20040141642A12004-07-22
Attorney, Agent or Firm:
PERRY, Garry A. et al. (US)
Download PDF:
Claims:
CLAIMS

What is claimed is:

1 . A method comprising: determining a target CMYK color value in a CMYK color space by: representing the CMYK color space as a 1 D K subspace and a 3D CMY subspace, wherein the 3D CMY subspace is indexed with: a depth parameter that can take any of a plurality of depth parameter values, wherein each of the plurality of depth parameter values constrains values of C, M and Y with respect to one another to define a respective surface in the 3D CMY subspace; and a 2D coordinate that can take any of a plurality of 2D coordinate values, wherein for a particular depth parameter value, each of the plurality of 2D coordinate values corresponds with a position in the respective surface in the 3D CMY subspace defined by the particular depth parameter value; determining a first depth parameter value of the plurality of depth parameter values and a first value of K which satisfy a first criterion constraining the first depth parameter value and the first value of K with respect to one another; and determining a first 2D coordinate value of the plurality of 2D coordinate values which, together with the determined first depth parameter value and the first value of K, corresponds to a first CMYK value which satisfies a second criterion; and identifying the first CMYK value as the target CMYK color value.

2. The method according to claim 1 , wherein the each of the plurality of 2D coordinate values represents a position in a 2D plane onto which the respective surface in the CMY subspace is projected.

3. The method according to claim 2, wherein the 2D plane onto which the surface is projected is arranged such that a gray axis of the 3D CMY subspace is normal to the 2D plane.

4. The method according to claim 1 , wherein the first criterion relates the first depth parameter value to the first K value based one or more of: a gray level; a lightness; a density; an ink usage efficiency; a grain condition; a color constancy condition; and a gamut condition; wherein, for example, the first criterion relates the first depth parameter value to the first K value by a gray component replacement amount and/or an under color addition amount.

5. The method according to claim 1 , wherein each depth parameter value of the plurality of depth parameter values corresponds with a respective sub-volume of the 3D CMY subspace, and wherein the respective surface defined by each depth parameter value is a surface of the respective sub-volume defined by the respective depth parameter value.

6. The method according to claim 5, wherein each of the sub-volumes is a cube, and wherein the surface of the respective sub-volume defined by the respective depth parameter value comprises three adjacent faces of the respective cube defined by the respective depth parameter value.

7. The method according to claim 1 , wherein the second criterion is a colorimetry criterion, for example, a colorimetry criterion based at least in part on one or more of: a neutrality condition, a hue condition and a saturation condition.

8. The method according to claim 1 , wherein the second criterion is based at least in part on an excess value which is indicative of whether a given value of the 2D coordinate corresponds with a CMY value in the 3D CMY subspace for a given value of the depth parameter.

9. The method according to claim 1 , wherein the second criterion defines one or more conditions defining the target CMYK value as an optimal black point satisfying a given set of criteria, such as one or more of a colorimetry criterion, a grain condition and an ink usage condition.

10. The method according to claim 1 comprising determining a plurality of further target CMYK color values in the manner defined by claim 1 , and wherein the target CMYK color value and the further target CMYK color values together define a set of target CMYK color values satisfying a third criterion.

11. The method according to claim 9, wherein the satisfying of the third criterion by the set of target CMYK color values defines the set of target CMYK color values as a color ramp, such as a neutral axis, for example wherein the satisfying of the third criterion requires that each target CMYK color value of the set of target CMYK color values satisfies a continuity condition with respect to neighboring target CMYK color values of the set of target CMYK color values.

12. A method comprising: determining a target CMYK color value in a 4D CMYK color space by: decomposing the CMYK color space into a 3D CMY subspace comprising a plurality of CMY values and a 1 D K subspace comprising a set of K values; indexing each CMY value in the 3D CMY subspace with: a depth parameter value; and a 2D coordinate value; wherein the depth parameter value represents a surface, in the CMY subspace, on which the particular CMY value lies, and wherein the surface is defined by a plurality of CMY values, including the particular CMY value, satisfying a constraint limiting C, M and Y with respect to one another; and wherein the 2D coordinate value defines a position, in the surface defined by the depth parameter value, corresponding to the particular CMY value; and determining a target K value of the target CMYK value and the target depth parameter value based on a first criterion relating the target K value to the target depth parameter value; and determining a target CMY value of the target CMYK value by searching the surface defined by the target depth parameter value to find the target CMY value based on a second criterion.

13. A method of producing a color profile for a color reproduction device such as a printer, the method comprising performing the method according to claim 1 or performing the method according to claim 11 to determine a target CMYK color value or a set of target CMYK color values satisfying one or more predetermined criteria and storing the target CMYK color value or set of target CMYK values in association in a color profile.

14. A non-transitory computer-readable storage medium comprising a set of computer-readable instructions that, when executed by a processor of a computing device cause the processor to: determine a target CMYK color value in a CMYK color space by: representing the CMYK color space as a 1 D K subspace and a 3D CMY subspace, wherein the 3D CMY subspace is indexed with: a depth parameter that can take any of a plurality of depth parameter values, wherein each of the plurality of depth parameter values constrains values of C, M and Y with respect to one another to define a respective surface in the 3D CMY subspace; and a 2D coordinate that can take any of a plurality of 2D coordinate values, wherein for a particular depth parameter value, each of the plurality of 2D coordinate values corresponds with a position in the respective surface in the 3D CMY subspace defined by the particular depth parameter value; determining a first depth parameter value of the plurality of depth parameter values and a first value of K which satisfy a first criterion constraining the first depth parameter value and the first value of K with respect to one another; and determining a first 2D coordinate value of the plurality of 2D coordinate values which, together with the determined first depth parameter value and the first value of K, corresponds to a first CMYK value which satisfies a second criterion; and identifying the first CMYK value as the target CMYK color value.

15. A non-transitory computer-readable storage medium comprising a color profile which is producible according to the method of claim 13.

Description:
DETERMINING A TARGET COLOR VALUE

BACKGROUND

[0001] Color is a concept that is understood intuitively by human beings. However, it is a subjective phenomenon rooted in the retinal and neural circuits of a human brain. A “color” is a category that is used to denote similar visual perceptions; two colors are said to be the same if they produce a similar effect on a group of one or more people. Color can be represented in a large variety of ways. For example, in one case a color may be represented by a power or intensity spectrum across a range of visible wavelengths. In another case, a color model may be used to represent a color using a small number of variables.

[0002] For example, color-related representations may be categorized into four main types: spectral representations; appearance representations; colorimetric representations; and device-dependent representations. Spectral representations consider properties such as power, intensity, reflectance and transmission as a function of wavelength across the visible spectrum. This is a representation of one or more physical properties that relate to color that is independent of human vision. Appearance representations predict human color perception instead of describing physical colorimetric stimuli. Colorimetric representations express a human observer's visual response to a stimulus in terms of its color. Example colorimetric representations are CIE XYZ color space and color spaces derived from it, e.g., CIELAB etc.

[0003] A color model can define a color space. A color space in this sense may be defined as a multi-dimensional space, wherein a point in the multidimensional space represents a color value and dimensions of the space represent variables within the color model. For example, in a Cyan, Magenta, Yellow and Black (CMYK) color space, four variables are used in a subtractive color model to represent different quantities of colorant. The International Commission on Illumination (CIE) 1931 XYZ color space, wherein three variables (‘X’, ‘Y’ and ‘Z’ or tristimulus values) are used to model a color, and the CIE 1976 (L*, a*, b* — CIELAB) color space, wherein three variables represent lightness (‘ L’) and opposing color dimensions (‘a’ and ‘b’). Certain color spaces, such as RGB and CMYK may be said to be device-dependent, e.g. an output color with a common RGB or CMYK value may have a different perceived color when using different imaging systems. Further, a device-dependent CMYK color space for a particular imaging system, such as a printer, may comprise multiple CMYK values which produce similar perceived colors but which may vary in other respects, such as the amount of ink used to produce the color, in the example of a printer.

BRIEF DESCRIPTION OF THE DRAWINGS

[0004] Various features of the present disclosure will be apparent from the detailed description which follows, taken in conjunction with the accompanying drawings, which together illustrate features of the present disclosure, and wherein:

[0005] Figure 1 shows a flowchart representation of a method of determining a target CMYK color value, according to an example described herein;

[0006] Figure 2 shows a schematic representation of a 3D CMY subspace and a projection of a surface in the 3D CMY subspace onto a 2D plane representing an aspect of certain example methods described herein;

[0007] Figure 3 shows a schematic representation of a plurality of subvolumes of the 3D CMY subspace of Figure 2 defined by different respective depth parameter values;

[0008] Figure 4 shows a schematic representation of projections of different sub-volumes of the 3D CMY subspace, defined by different respective depth parameter values, onto the 2D plane of Figure 2;

[0009] Figure 5 shows an example color profiling system for performing a method according an aspect of the present disclosure; and

[0010] Figure 6 shows an example of a computing device for implementing a method according to examples described herein.

DETAILED DESCRIPTION

[0011] Certain examples described herein relate to color mapping for an imaging system. Color mapping is a process by which a first representation of a given color is mapped to a second representation of the same color. For example, certain examples described herein may be used in the context of a color profiler. For a printing system, a color profiler creates a mapping between the CMYK values in the device-dependent color space of the printing system and the colorimetry of the colors printed by the printer. The colorimetry may, for example, be measured by a suitable measurement device such as a spectrophotometer, and represented in a colorimetric space, such as Cl ELAB or CIEXYZ. A color profile may be created for a printing system, for example, during the initial setup of the printing system. In some examples, a color profile may be created, e.g. to replace a previous color profile or to be used in a different set of circumstances to the previous color profile, to be used when a change in the behavior of the printer is to be expected. For example, a different color profile may be used for the same printer depending on the type of print media and/or type of ink the printer is to be used with. In some examples a calibration for the printer may be provided which may enable the printer to be placed in a state in which a previously produced color profile is considered to be usable.

[0012] A printing system may be instructed to print colors that are similar to or match desired, or target, colors, such as colors of an image received in a digital format. The target colors to be printed may be represented in an input color space which is different to the device-dependent CMYK color space of the printing system. For example, the input color space may be a device independent color space, such as a standard RGB color space, such as sRGB. Associations between the input color space and the device-dependent CMYK color space can be determined in order to determine the CMYK color value for the printing system to use to print an input color value defined in the input color space. For example, a colorimetry of each of the CMYK values in the CMYK color space may be represented in a standard device-independent color space, such as CIELAB. This may be done by printing various CMYK values and measuring the colorimetry of the printed colors, using, for example, a measurement device such as a spectrophotometer. In this way, the colorimetry associated with CMYK values in the CMYK color space can be determined such that, for example, this information can be used when the printing system is tasked with printing an input color having a particular colorimetry. However, there may be multiple different combinations of the C, M, Y, K colorants which produce a color which matches the input color value. Further, each of the combinations of C, M, Y, K colorants which matches the colorimetry of the input color may have different properties, such as different amounts of total ink usage or different degrees of color constancy when viewed under different illuminants. In order to determine a target CMYK color value satisfying a given set of criteria a search of the 4D CMYK color space may be performed.

[0013] Figure 1 shows a flowchart representation of an example method 100 according to the present disclosure.

[0014] At block 102, the method comprises representing the CMYK color space as a 1 D K subspace and a 3D CMY subspace. In the representation, the 3D CMY subspace is indexed with a depth parameter that can take any of a plurality of depth parameter values. Each of the plurality of depth parameter values constrains values of C, M and Y with respect to one another to define a respective surface in the 3D CMY subspace. The 3D CMY subspace is also indexed with a 2D coordinate that can take any of a plurality of 2D coordinate values. For a particular depth parameter value, each of the plurality of 2D coordinate values corresponds with a position in the respective surface in the 3D CMY subspace defined by the particular depth parameter value. In some examples, the depth parameter is able to take any depth parameter value within of a range of depth parameter values.

[0015] In some examples, each depth parameter value defines a surface which is a surface of respective sub-volume of the CMY subspace. Each of the sub-volumes may, for example, be a cube. In such examples, the surface defined by a particular depth parameter value may comprise faces of the cube defined by the depth parameter value, for example three adjacent faces of the cube.

[0016] In some examples, each of the plurality of 2D coordinate values represents a position in a 2D plane onto which the respective surface in the CMY subspace is projected. The 2D coordinate values may, for example, represent a position in a plane onto which the CMY subspace is orthographically projected. The 2D plane onto which the surfaces are projected may be arranged such that a gray axis of the 3D CMY subspace is normal to the 2D plane. For example, the 3D CMY subspace may be arranged such that a point having maximum values for each of C, M and Y is furthest, of all the points in the CMY subspace, from the 2D plane. This point in the CMY subspace may be referred to as a black point.

[0017] Each point in the CMY subspace is addressable by combination of a particular depth parameter value and a particular 2D coordinate value. That is, each depth parameter value, as described above, defines a respective surface in the CMY subspace while a particular point in the surface is addressed by a 2D coordinate value. The depth parameter and the 2D coordinates may therefore be considered to provide a pseudo-cylindrical indexing of the CMY subspace.

[0018] At block 104, the method comprises determining a first depth parameter value of the plurality of depth parameter values and a first value of K which satisfy a first criterion constraining the first depth parameter value and the first value of K with respect to one another.

[0019] The first criterion may, for example, relate the first depth parameter value to the first K value based on one or more of: a gray level; a lightness; a density; an ink usage condition; a grain condition; a color constancy condition; and a gamut condition. In this context, a density is a representation of a darkness produced by an amount of ink, which may be representative of a fraction of light absorbed by the amount of ink. An ink usage condition may, for example, define a maximum amount of ink to be used to produce the target CMYK color value. Since use of black K comprises use of a single dark ink while use of composite CMY comprises the use of three less dark inks, in many examples a given perceived color may be produced with a lower total amount of ink by using a larger proportion of black ink. Furthermore, a printed color produced using a greater proportion of black ink, as opposed to greater proportion of a composite of CMY inks, in many examples, is more stable in its perceived color under different illuminants, i.e. the printer color has a higher color constancy. Another attribute which may be affected by the proportion of black ink and a CMY composite of inks, as mentioned above, is a perceived grain of the color. For example, printing a given color using a larger proportion of a CMY composite typically uses more drops of ink which may result in an output color with lower perceived grain. Conversely, printing the given color printed with a larger proportion of black ink generally uses fewer drops of ink and may result in a higher perceived grain. Another attribute which may vary with the balance between black and composite used to print a given color is the gamut of colors available. That is, for colors which are not neutral, also referred to as chromatic colors, adding an amount of composite CMY may not only darken the color but also reduce the saturation of the color. In some contexts, this can result in a reduction in the gamut of colors available as compared to when a larger proportion of black ink is used.

[0020] Accordingly, the balance between the proportion of black ink and a composite of CMY inks used to print colors at various levels of lightness may influence various attributes, such as those described above. The first criterion may relate the depth parameter value to the K value based on any of the abovedescribed attributes or various combinations of the above-described attributes. In some examples, different attributes or combinations of attributes may be used in different parts of the gamut of colors printable by the device to which the CMYK space belongs. An ink usage condition may, for example, be used to relate the depth parameter value to the K value in all parts of the gamut, while the effect of the balance between black and composite on the gamut of available colors may attributed greater relative importance for darker colors in the gamut where the different in gamut is more pronounced.

[0021] In an example, the first criterion relates the depth parameter value to the K value by use of a gray component replacement (GCR) amount. A GCR amount may define a balance between an amount of composite CMY and black contributing to a given color with reference to one or more of the above-described attributes. An under color addition (UCA) amount may also be used, for example, in conjunction with a GCR amount to define a degree to which the desired balance between black and composite contributing to a target CMYK color varies for target CMYK values of different lightness. A GCR algorithm may, for example, be used to relate the depth parameter value to the K value based on an ink usage condition, a color constancy condition and a grain condition. The weighting of various attributes taking into account by the GCR algorithm typically varies depending on the part of the gamut being searched to find the target CMYK value. For example, a GCR and UCA, algorithm may be used, for example, to determine a balance between black and composite along a gray axis by taking into account ink use efficiency, color constancy and grain. In one example, in order to determine a balance between black and composite for colors in the dark but chromatic, i.e. not neutral, part of the gamut a similar algorithm may be used which additionally or alternatively takes into account grain and the effect of the balance on the available gamut.

[0022] In some examples, the first criterion may be based on one or more further conditions, such as: a maximum K amount for the target CMYK color value, or a black start value. The black start value, in one example, defines a threshold lightness for the target CMYK color value above which only CMY inks are used and below which black ink is added in addition to the CMY inks. In other examples, the black start value may define an amount of composite CMY above which black ink is added and below which black ink is not added.

[0023] At block 106, the method comprises determining a first 2D coordinate value of the plurality of 2D coordinate values which, together with the determined first depth parameter value and the first value of K, corresponds to a first CMYK value which satisfies a second criterion.

[0024] The second criterion may, for example, be a colorimetry criterion. For example, the second criterion may define a chromaticity, for example by one or more of a neutrality, a hue and a saturation. Thus, the above-described first criterion may be used to define a balance between black and composite CMY in a target CMYK value while, in addition, the second criterion can be used to identify a CMYK value satisfying a particular colorimetry criterion. The identified CMYK color value can then be identified as the target CMYK color value. In one example, the method 100 may be used to determine a black point by specifying particular attributes, for example, with regard to one or more of ink usage, color constancy, grain and/or other factors which are used to set a balance between black and composite, in terms of a depth parameter value and a K value, as discussed above. In this example, once the depth parameter value and K value are determined with reference to these attributes, a CMYK color value having the defined depth parameter value and K value and having a neutral colorimetry may be determined in order to find the black point.

[0025] At block 108 the method comprises identifying the first CMYK value, determined at block 106, as the target CMYK color value. The target CMYK value may, for example, be stored in a color profile to be used by a printing system to which the CMYK color space corresponds when the printing system is tasked with printing a color corresponding to the target CMYK value.

[0026] In some examples, the method may comprise determining a plurality of further target CMYK values in the manner described with reference to blocks 102 to 108. The method may, for example, comprise determining a set of target CMYK values comprising the first target CMYK value and a plurality of further target CMYK values. The first target CMYK value and the plurality of further target CMYK values may together satisfy a third criterion. In one example, the set of target CMYK values satisfy the third criterion if the set of target CMYK values defines a neutral axis, which may also be referred to as a gray axis. In another example, the third criterion may impose a requirement on the set of target CMYK values that the set of target CMYK values defines a color ramp from one colorimetry to another colorimetry, e.g. a ramp from a solid primary color, i.e. C, M or Y, or from a secondary color, i.e. R, G or B, to a black point. Similar considerations may be made when determining the depth parameter value and K value whether the set of target CMYK color values defines a gray axis or a color ramp between arbitrary colorimetries. In one example, a color ramp is a ramp between a green secondary (which consists of cyan and yellow primaries) in the CMYK color space and black. Going from the green secondary towards black, in terms of lightness, may be done by adding, to the green ink, black ink or a composite of CMY inks. In the manner discussed above, opting for a greater proportion of the composite of inks may result in a lower grain when compared to using more black ink, however, using the composite typically will use more ink and may also reduce saturation and reduce the available gamut. The difference in grain resulting from the use of a CMY composite or black ink may differ between points in the gamut and thus grain may be considered to a greater or lesser degree at different points in the gamut. For example, black drops of ink added to a yellow color may be very visible and thus a lower grain may be achieved by adding drops of cyan and magenta ink, rather than black ink, to achieve a similar dark yellow. However, adding black ink rather than a composite comprising cyan and magenta may help conserve the gamut of available colors and will use less ink. Accordingly, since the relative importance of the various attributes such as grain, ink use efficiency and conserving the available gamut may vary along the color ramp, the third criterion may specify how the first criterion which determines the balance between black and composite varies along the color ramp.

[0027] The third criterion may impose certain requirements on the set of target CMYK values, such as a requirement which provides global continuity along a curve defined by the set of target CMYK values. For example, where the method is used to find a gray axis, the third criterion may impose a continuity condition on the set of target CMYK values. The continuity condition may place a constraint on each target CMYK value of the set of CMYK values with respect to neighboring target CMYK values of the set. For example, the continuity condition may require that C, M, Y and K values vary continuously between neighboring target CMYK values. As an example, if a color ramp between two different LAB colorimetries is defined, then a set of target CMYK color values may be determined corresponding respectively with each of the LAB values in the ramp. A continuity condition may be imposed to specify that individual C, M and Y components of target CMYK values in the ramp vary continuously with respect the target CMYK value corresponding to an adjacent point on the color ramp. By imposing such a continuity condition on the set of target CMYK values, artifacts, such as contouring, may be reduced by ensuring that the CMYK values vary smoothly between neighboring LAB values.

[0028] Examples of the method described with reference to Figure 1 allow for efficient searching of the CMYK space to find a target CMYK value or a set of target CMYK values. Since the depth parameter and the K value are constrained with respect to one another by the first criterion, for a particular depth parameter value, the space to be searched is a two-dimensional space. Thus, the method allows for the number of dimensions of the space in which the search is conducted to be reduced from four dimensions to two dimensions when compared to a search for a target CMYK color value conducted in the full 4D CMYK space. This can help avoid issues which may be encountered when searching in the higher-dimensional full CMYK space, due to searching a higherdimensional space generally being computationally intense and therefore potentially slow and/or unreliable. In certain examples methods according to the present disclosure can allow the CMYK space to be searched by applying standard search methods for searching a 2D space, such as a downhill algorithm. [0029] Example methods may provide for continuity along the plurality of target CMYK values making up such a curve. The K value is representative of an amount of black ink contributing to the target CMYK color value while the depth parameter value is representative of an amount of composite gray contributing to the target CMYK color value. The method allows the K value and the depth parameter value to be related to one another and therefore allows for a representation of the CMYK space in which the lightness of the target CMYK color, indicated by the amount of composite gray and hence the depth parameter value, can be separated from the chromaticity of the target CMYK color, which is indicated by the position in the 2D coordinate to which the target CMYK color corresponds. This allows, for example, for a gray axis to be determined in which CMYK values, and, in some examples, individual C, M, Y and K components, vary smoothly.

[0030] Figure 2 shows a schematic representation of a 3D CMY subspace 200 of an example 4D CMYK color space. The 3D CMY subspace 200 shown in Figure 2 is a CMY cube comprising a plurality of CMY values. Each of the plurality of CMY values is defined by a value for each of C, M, and Y. In this example, each of the plurality of CMY values in the CMY cube 200 takes a value for each of C, M and Y in a range of 0 to 100 with a value of 0 for a particular one of C, M and Y indicating that no ink of the corresponding color is used and a value of 100 indicating that a maximum amount of ink of the corresponding color is used. A 2D plane 250 is adjacent the CMY cube 200. The arrangement and function of the 2D plane 250 is discussed in more detail below. In this example, a black point 210 of the CMY cube 200, i.e. a point representing a CMY value having maximum values for each of C, M and Y, in this example (C, M, Y) = (100, 100, 100), is at a top of the CMY cube 200, furthest from the 2D plane 250. A white point 220, i.e. a point corresponding to a CMY value having a value of 0 for each of C, M and Y, is at a bottom of the CMY cube 200 nearest the plane 250. In this example the white point 220 is a point in the 2D plane 250. The CMY cube 200 has a gray axis 230 which connects the white point 220 and the black point 210 and comprises each of the CMY values in the CMY cube 200 which have equal values for each of C, M and Y, e.g. (C, M, Y) = (50, 50, 50) etc.. In this example, the gray axis 230 is normal to the 2D plane 250 and is aligned with a z-axis of a right- handed cartesian coordinate system xyz.

[0031] The 2D plane 250 is arranged adjacent to the CMY cube 200 to allow a projection of surfaces in the CMY cube 200 onto the plane 250. This allows points in the surfaces to be indexed with respect to the position to which they are projected in the 2D plane 250. In this example, a surface comprising three faces of the CMY cube 200 is projected orthographically onto the plane 250, forming a first projection 255. Points in the 2D plane 250 are indexed by a 2D coordinate value comprising an x value and a y value.

[0032] The CMY cube 200, as shown in Figure 2, comprises a first surface which comprises three upper faces 222, 224, 226 of the CMY cube 200. The three upper faces 222, 224, 226 share a vertex at the black point 210. The three upper faces 222, 224, 226 of the CMY cube 200 are projected onto the 2D plane 250, defining the first projection 255. In this example, the first projection 255 defines a hexagon in the 2D plane 250. The first projection 255 allows the three upper faces 222, 224, 226 to be indexed with a 2D x, y coordinate, defining a position in the 2D plane 250 to which each point in the top three faces 222, 224, 226 corresponds. Accordingly, each of the points in the three upper faces 222, 224, 226 is indexed with a 2D x, y coordinate.

[0033] The CMY cube 200 is also indexed by a depth parameter t. The depth parameter is able to take each of a plurality of depth parameter values. Each depth parameter value defines a surface within the CMY cube 200. In this example, the depth parameter can take any depth parameter value in a range 0 to 1. [0034] Figure 3 shows a schematic representation of the CMY cube 200 and a plurality of surfaces in the CMY cube 200 corresponding to different depth parameter values for the depth parameter t. In this example, each depth parameter value corresponds to a surface defined by the upper three faces of a cube which is smaller than the CMY cube 200 and which is nested inside the CMY cube 200. That is, the depth parameter value f=1.0 corresponds with the surface defined by the three upper faces 222, 224, 226 of the CMY cube 200 shown in Figure 2. The depth parameter value f=0.8 corresponds with the upper three faces of a first sub-cube 200a within the CMY cube 200. Similarly, depth parameter values of =0.6, f=0.4 and f=0.2 correspond to the surfaces of further, progressively smaller, sub-cubes 200b-200d of the CMY cube 200. Each of the sub-cubes 200a-200d is a cube sharing the white point 220 of the CMY cube 200 and having a different respective black point 210a-210d lying on the gray axis 230 of the CMY cube 200. Accordingly, the sub-cubes 200a-200d each have three upper faces which are parallel with a respective one of the three upper faces 222, 224, 226 of the CMY cube 200. The depth parameter value is such that each sub-cube has a respective black point 210a-210d which corresponds to a CMY value of (C, M, Y) = t * (100, 100, 100). For example, the black point 210a of the first sub-cube 200a corresponds to a CMY value (80, 80, 80). Accordingly, all points in the CMY cube 200 lie on one of a plurality of surfaces in the CMY cube 200 where each surface can be addressed by a respective depth parameter value in the range 0 to 1 .

[0035] Each of the plurality of surfaces defined by a respective depth parameter value can be projected onto the 2D plane 250 to allow each point in each surface to be indexed with a respective x, coordinate, in the same manner as described above for the surface defined by the three upper faces 222, 224, 226 of the CMY cube 200. Accordingly, a pseudo-cylindrical indexing of the CMY cube 200 is provided in which each CMY value in the CMY cube 200 is indexed with a depth parameter value of the depth parameter t, and a 2D x, / coordinate value.

[0036] Figures 4A to 4D show, in a top down schematic view, projections onto the plane 250 of respective surfaces in the CMY cube 200 defined by different depth parameter values. Figure 4A shows the first projection 255 of the surface defined by the depth parameter value f=1. Figures 4B-4D show, respectively, projections of surfaces 255b-255d defined by depth parameter values f=0.75, f=0.5 and f=0.25. Each of the CMY values corresponding to a particular projection may comprise a similar lightness while the colorimetry of the CMY values varies across the plane 250.

[0037] In the above-described manner, a correspondence is provided between each CMY value in the CMY cube 200 and a particular set of x, y and t values. A mapping is also provided in order that a particular CMY value can be addressed with a particular set of x, y and t values. In one example, this mapping is a face-by-face mapping. For example, each point in the projection 255 of the CMY cube 200 corresponds with a particular one of the upper three faces 222, 224, 226 of the cube 200. Since each of the three faces 222, 224, 226 is oriented differently with respect to the plane 250, in a simple arrangement, a different mapping between x, y values and CMY values is provided depending on which of the three faces 222, 224, 226 the x, y values correspond to. A branching may then be provided wherein in order to determine the CMY value corresponding to a particular set of x, y and t values, it is first determined which face 222, 224, 226 of the CMY cube 200 a particular set of x, y and t values corresponds to. A different mapping may then be applied depending on which face 222, 224, 226 of the CMY cube 200 a particular set of x, y and t values corresponds to. In some examples, a different mapping may be provided for each of six triangular hexants making up a hexagonal projection of a particular surface defined by a particular depth parameter value. In another example, a different mapping may be provided for each of three rhombuses making up the hexagonal projection.

[0038] In some examples a mapping between x, y and t values and CMY values in the CMY cube 200 can be provided in which there is no branching, i.e. a single mapping is provided over the whole of the projection. One such example will now be described.

[0039] In this example, a function H(x,y, t) {CMY, e} is defined. The function H(x,y, t) takes an x,y value defining a position in the 2D plane 250 and a depth parameter value for the depth parameter t and returns a CMY triplet value and an excess value e, as follows.

[0040] The following matrix R allows for a transformation to be computed between the cartesian space xyz to an unbound cmy space.

[0041] The z position corresponding to a set of x, y, t values can be computed as follows: (2)

[0042] The x,y and z values can then be converted to an unbound cmy value using the matrix (1), as follows: (4)

[0043] Finally, a bound CMY value lying in the CMY cube 200 can be computed, as follows:

(5) (6)

[0044] The function H(x,y,t) therefore transforms an input space (x,y, t), wherein x,y define points in the 2D plane 250 containing the projection of the particular surface in the CMY cube 200 defined by the constraint max(C,M,Y ) = t, to the CMY subspace defined by the CMY cube 200 itself.

[0045] The 2D plane 250, as can be seen in Figure 2, extends beyond the first projection 255 of the full CMY cube 200. Accordingly, a particular x,y point in the 2D plane 250 may lie outside the projection corresponding to a particular depth parameter value and therefore may not correspond with a CMY value in the CMY cube 200. The excess value e provides an indication of whether a particular x,y value lies inside or outside the projection defined by the value of t. In this example if the excess value e is greater than zero this indicates that the x,y point does not correspond with a CMY value in the CMY cube 200. The excess value may be used when searching the x,y space to find a CMY value satisfying a given criterion. For example, the excess value e can be used to penalize points which are outside of the CMY cube 200 to, e.g., ensure that such points are discounted when searching for a CMY value to form part of a target CMYK value. In examples, the excess value may be taken into account in the second criterion applied to determine the target CMYK value.

[0046] Using the above-described indexing of the CMY subspace, efficient searching can be performed to find a target CMYK value. A constraint is used to constrain the depth parameter value of the depth parameter t and the value of K with respect to one another. This allows the CMY subspace to be searched, for a given value of t, by searching the 2D x,y plane.

[0047] In some examples, a method of searching of the x,y values of the plane 250 may take into account how the excess value e varies with x,y in order to improve efficiency. For example, a method of searching the x,y plane 250 for an x,y value corresponding with a target CMYK value may be configured to minimize the excess value e in order that the search is guided to the x,y values which lie within the projection corresponding to the given depth parameter value. This may improve efficiency by guiding the search to consider x,y values that correspond with a CMY value in the CMY cube 200.

[0048] In one example, a method according to the present disclosure is used to find a target CMYK value which is a black point satisfying a given set of criteria. For example, a user may set criteria for the target CMYK value including, for example, a maximum K value, a GCR and/or UCA amount, a neutrality goal and an ink limit. The method may then proceed to find the target CMYK value satisfying these criteria by using the maximum K value, a GCR and/or UCA amount and ink limit to constrain K and the depth parameter / with respect to one another and searching the x,y space in order to find a CMYK value satisfying the neutrality goal. [0049] In another example, a method according to the present disclosure may be used to determine a plurality of CMYK values that satisfies a given set of criteria. In one such example, the method may be used to determine a gray axis, that is, a set of CMYK values starting from white, i.e. no ink, and ramping smoothly to a black point. In such an example, a curve of K values for the gray axis may be provided which may be determined by various criteria, such as a black start point, a maximum black amount, a GCR amount, or a target gray level, lightness or density. The target gray axis may also be defined by a colorimetry criterion which defines a target colorimetry. For example, the colorimetry criterion may be a neutrality target, requiring e.g., C* = 0, where C* is the chroma of the color when the color is represented in the CIELAB space. The search then proceeds to find the plurality of target CMYK values defining the gray axis by constraining the depth parameter value t with respect to the values defined by the curve of K values and for each depth parameter value t searching the x,y space in order to find a CMYK value satisfying the colorimetry criterion. Further criteria may also be defined to be met by the target CMYK values, such as color constancy or grain or any other criteria such as those described elsewhere herein. In an example where the plurality of target CMYK values is a gray axis, an optimal black point may be determined in the manner described above and set to be an end point of the gray axis.

[0050] As mentioned above, in examples, the method may be used to find a CMYK value which has a given colorimetry and/or which satisfies one or more further criteria. The criteria may, for example, specify a maximum amount of ink to be used to produce the target CMYK value and/or may specify a lightness of the target CMYK value.

[0051] Since example methods allow for searching for a target CMYK value to be conducted in two dimensions rather than the full four dimensions of the CMYK space, efficient search performance can be provided. This can also ensure continuity where the task is to find a plurality of target CMYK values, such as a neutral axis, since the indexing of the CMY cube relates to, by the depth parameter t, the amount of composite gray in the target CMYK value and, by the x, y value, the position in a chromatic plane. A search method, such as a downhill or amoeba algorithm, may be used to search the 2D space in order to find a CMYK value satisfying a desired set of criteria.

[0052] A target CMYK color value or values, when determined by a method according to the present disclosure, may be used in the production of a color profile for the device to which the CMYK color space relates. Accordingly, in one example, a method is provided of producing a color profile for a device comprising performing a method as described above to determine one or more target CMYK values for use in the color profile.

[0053] Figure 5 shows an example computing system 500 for performing a method according to examples described above. In the example of Figure 5, color data 510 relating to a printing system (not shown) is provided to a color profiler 520. The color data 510 comprises CMYK values in the device-dependent CMYK color space of the printing system and an associated colorimetric, e.g. CIELAB, value for each of the CMYK values. The color profiler 520 stores each of the CMYK values in association with the associated colorimetric value. The color profiler 520 performs a method according to examples described herein to determine a target CMYK color value for inclusion in a color profile for use with the printing system. As described above, multiple CMYK values in the CMYK color space may be associated with the same colorimetric value. The color profiler 520 therefore can, for example, determine one or more target CMYK values associated with a given colorimetry by selecting one of the CMYK color values in the color data 510 associated with the given colorimetry according to a given set of criteria. Having determined one or more target CMYK color values in this way for use by the printing system, the color profiler 520 outputs a color profile 530 which includes the one or more target CMYK color values and allows the printing system to map input color values to its device dependent CMYK color space. In one example, the color profile 530 includes a single CMYK value for each of plurality of colorimetries, e.g. LAB values, printable by the printing system. Accordingly, when the printing system is tasked with printing a given LAB colorimetry the color profile 530 can be referred to, e.g. by a color management module, to determine the CMYK value to print that colorimetry. In some examples, the color profile 530 includes multiple sets of CMYK values, each comprising a single CMYK value for each colorimetry printable by the printing system. Each of the sets of CMYK values may, for example, correspond to a rendering intent for the printing system. In one example, a color profile 530 comprises three sets of CMYK values, corresponding to three different rendering intents. The color profile 530 may later be used during printing, e.g. by the color management module, to select CMYK values to match a given input colorimetry based on a selected rendering intent.

[0054] In examples, since including one or more CMYK values for each colorimetry printable by the printing system may result in a large profile, the color profile 530 may include a subset of the printable colorimetries, each with one or more corresponding CMYK values. That is, a sampling of the space of printable colorimetries, rather than the entire space of printable colorimetries, is included in the color profile 530 along with corresponding CMYK values for the sampling of printable colorimetries. In one particular example, the color profile 530 includes a 33 x 33 x 33 grid of points in the colorimetric space forming a set of 35,937 points. A larger number of points may provide more comprehensive coverage of the gamut but at the cost of higher storage requirements. The aforementioned example of a 33 x 33 x 33 grid may provide a good balance between these two factors. In examples, use of the profile 530 in a printing workflow, e.g. by a color management module, may involve interpolating from the values provided in the color profile 530. For example, a color management module may interpolate a value for a particular colorimetry based on appropriate neighbors to the value in the color profile 530. The appropriate neighbors may be selected according to the method of interpolation to be used, e.g. tetrahedral interpolation or cubic interpolation. Certain examples of the present method provide for smooth transitions between neighboring points. Therefore, certain examples provide for more accurate reproduction of the actual behavior of the printing system by use of interpolation, since the interpolation is performed using neighboring values which vary smoothly.

[0055] Figure 6 shows an example of a non-transitory machine 600. Certain methods and systems as described herein may be implemented by a processor 610 that processes computer program code that is retrieved from a non-transitory storage medium 620. In some examples, the processor 610 and computer readable storage medium 620 are comprised within the non-transitory machine 600. Machine-readable medium 620 can be any medium that can contain, store, or maintain programs and data for use by or in connection with an instruction execution system. Machine-readable media can comprise any one of many physical media such as, for example, electronic, magnetic, optical, electromagnetic, or semiconductor media. More specific examples of suitable machine-readable media include, but are not limited to, a hard drive, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory, or a portable disc. In Figure 6, the machine-readable storage medium comprises instructions 630 which, when executed by the processor 610, cause an example method described above to be performed.

[0056] It should be noted that, in some examples of the method described above, the CMYK space relates directly to the amount of CMYK colorants, e.g. inks, used to print a color value. In such examples, a CMYK value of (100, 100, 100, 100) indicates that the maximum amount of each colorant is being used and that these amounts represent the same amount (e.g. weight or volume) of ink or other colorant. In other examples, equal C, M, Y and K values may not represent equal amounts of colorant. Examples of the method described herein may be applied whether or not equal C, M, Y and K values represent equal amounts of ink. In other examples, it may be desired to impose per-channel ink limits. That is, a different maximum value may be set for one or more of C, M, Y and K. For example, a limit may be placed on the Y channel in order to limit the maximum value of Y to 80, which the maximum values of C, M and K each remain at 100. In this example, the CMY space within the per-channel ink limits is not a cube since not all of the sides are of equal length in the CMY space. In such examples, methods described herein may still be applied by applying an appropriate scaling to the values of the CMY space. By applying such a scaling, a scaled version of the CMY space may be computed in which is a cube. The determining of a target CMYK value or a plurality of target CMYK values may then proceed by searching, in the above described manner, using the scaled version of the CMY space. A value in the scaled version of the space may then be converted to an actual CMYK value of the device by applying the appropriate scaling. Accordingly, methods described herein can be employed where per-channel ink limits are placed on the CMYK space.

[0057] The preceding description has been presented to illustrate and describe examples of the principles described. This description is not intended to be exhaustive or to limit these principles to any precise form disclosed. Many modifications and variations are possible in light of the above teaching. It is to be understood that any feature described in relation to any one example may be used alone, or in combination with other features described, and may also be used in combination with any features of any other of the examples, or any combination of any other of the examples.