Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD OF COLOR GAMUT MAPPING INPUT COLORS OF AN INPUT LDR CONTENT INTO OUTPUT COLORS FORMING AN OUTPUT HDR CONTENT
Document Type and Number:
WIPO Patent Application WO/2018/114509
Kind Code:
A1
Abstract:
This method comprises expanding lightness or luminance and chroma of each input color along a mapping curve which is different from a straight line, where said expanding comprises applying an inverse tone mapping algorithm to lightness or luminance and optionally applying a tone mapping algorithm along the same mapping curve to bring expanded out-of-gamut colors inside an output color gamut.

Inventors:
SEIFI MOZHDEH (FR)
REINHARD ERIK (FR)
Application Number:
PCT/EP2017/082559
Publication Date:
June 28, 2018
Filing Date:
December 13, 2017
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
THOMSON LICENSING (FR)
International Classes:
G06T5/00
Domestic Patent References:
WO2016192937A12016-12-08
Foreign References:
US20100110312A12010-05-06
US20080043260A12008-02-21
EP0961488A21999-12-01
Other References:
TANIA POULI ET AL: "Color Correction for Tone Reproduction", COLOR AND IMAGING CONFERENCE, 1 November 2013 (2013-11-01), pages 215 - 220, XP055114893, Retrieved from the Internet [retrieved on 20140423]
MANTIUK R ET AL: "Color correction for tone mapping", COMPUTER GRAPHICS FORUM, WILEY-BLACKWELL PUBLISHING LTD, GB, vol. 28, no. 2, 1 April 2009 (2009-04-01), pages 193 - 202, XP002596979, ISSN: 0167-7055, DOI: 10.1111/J.1467-8659.2009.01358.X
SIKUDOVÁ E; POULI T; ARTUSI A; AKYÜZ A O; BANTERLE F; MAZLUMOGLU Z M; REINHARD E: "A gamut-mapping framework for color-accurate reproduction of HDR images", IEEE COMPUTER GRAPHICS AND APPLICATIONS, IEEE SERVICE CENTER, NEW YORK, NY, US, vol. 36, no. 4, 1 July 2016 (2016-07-01), pages 78 - 90, XP011617983, ISSN: 0272-1716, [retrieved on 20160729], DOI: 10.1109/MCG.2015.116
Attorney, Agent or Firm:
BROWAEYS, Jean-Philippe (FR)
Download PDF:
Claims:
CLAIMS

1 . Method of color gamut mapping input colors of an input LDR content into output colors forming an output HDR content, from an input color gamut into an output color gamut, in a mapping color space that can be partitioned into 2D constant-hue slices having axes for lightness or luminance and chroma, said color gamut mapping method comprising, for each input color, expanding lightness or luminance and chroma of said input color in the constant-hue slice of said input color along a mapping curve defining in said constant-hue slice a non-linear relationship between lightness or luminance and chroma C.

2. Method of color gamut mapping according to claim 1 wherein said relationship is defined such that the first order partial derivative of chroma with respect to lightness or luminance is strictly positive.

3. Method of color gamut mapping according to claim 1 or 2 wherein said relationship is defined such that the second order partial derivative of chroma with respect to lightness or luminance is positive. 4. Method of color gamut mapping according to any one of claims 1 to 3, wherein said relationship between lightness / and chroma C is defined according to : C = fc p(/),

where p(/) is a monotonically non-linearly increasing saturation compensation function defined such that that p(0) = 0, and where k is a scalar defined such that k = —— , where /in and Cm are respectively the lightness and the chroma of said input color.

5. Method of color gamut mapping according to claim 4 wherein said saturation compensation function is defined by p ( /) = Iq, where q is a saturation compensation exponent which is different from zero and different from 1 .

6. Method of color gamut mapping according to claim 5 wherein said saturation compensation exponent q is equal or superior to 1 .5.

7. Method of color gamut mapping according to claim 5 wherein said saturation compensation exponent q is equal or inferior to 0.5.

8. Method of color gamut mapping according to any one of claims 1 to 3 wherein said relationship between lightness / and chroma C is defined according to : C = a{I) p(/) + k',

where p(/) is a monotonically non-linearly increasing saturation compensation function defined such that that p(0) = 0, where a(/) is defined as a correlate of chroma in a color appearance model (CAM), and where k' is a scalar defined such that k' = Cin - a ( lin) p ( lin), where /in and Cin are respectively the lightness and the chroma of said input color.

9. Method of color gamut mapping according to any one of claims 1 to 3 wherein said relationship between lightness / and chroma C is defined according e(0) / +w(0)

fc(0) / +h(0)

where o is a chroma offset and Θ = L/

10. Method of color gamut mapping according to claim 9 when depend on claims 2 and 3, wherein V 0 : fc(0) < 0 and ¾(0) > - /c(0) / .

1 1 . Method of color gamut mapping according to claim 9 when depending on claims 2 and 3, wherein V 0 : fc(0) > 0 and i(0) < - fc(0) / .

12. Method of color gamut mapping according to any one of claims 1 to 8 further comprising, at least when said expanded input color is out of said output color gamut, compressing said expanded luminance or lightness and chroma along said mapping curve such that resulting compressed output color is located inside said output content.

13. Image processing device comprising at least one processor configured to implement the method according to any one of claims 1 to 12. 14. Electronic device incorporating the image processing device of claim 13.

15. Non-transitory storage medium carrying instructions of program code for executing steps of the method according to one of claims 1 to 12 when said program is executed on a computing device.

Description:
Method of color gamut mapping input colors of an input LDR content into output colors forming an output HDR content

Technical Field

The invention relates to the field of inverse-tone mapping a LDR color content into a HDR color content.

Background Art

Technologies allowing for extensions in luminance range are known as high dynamic range imaging, often shortened to HDR. HDR technologies focus on capturing, processing and displaying content of a higher dynamic range. Although a number of HDR display devices have appeared and cameras capable of capturing an increased dynamic range are being developed, there is still a very limited amount of HDR content available.

HDR expansion:

To prepare color content for HDR displays, it is known to use reverse or inverse tone mapping operators (iTMO). Such algorithms process the low dynamic range luminance information of colors in the image with the aim of recovering or recreating an appearance of the original scene, i.e. with high dynamic range. Typically, ITMOs take a conventional image as input (from here on referred to as LDR for low dynamic range) and expand the luminance range of the image, generally in a non-linear manner. Such a luminance processing may or may not be spatially varying, where spatially varying processing may reduce the amplification of artifacts at the cost of longer processing times.

Chroma adjustments:

Changes in luminance levels, such as for instance created by tone reproduction algorithms and inverse tone reproduction algorithms, may create images that may appear too color saturated, or not saturated enough. This is notably due to a quirk of the human visual system, which appears to interpret brighter scenes as being more saturated, even if the saturation encoded in the pixels is not affected. This is known as the Hunt effect. This means that in applications where a change in luminance is implemented, without changes in other correlates of visual appearance, it is necessary to perform an additional adjustment to either saturation, or, equivalently, chroma.

Representation of colors in color spaces:

Image and video content can generally be represented in different color spaces. For instance, an RGB color space can be understood as a three- dimensional volume in a coordinate system defined by a red, a green and a blue primaries. The minimum and maximum values of the red, green and blue components representing colors in this RGB color space define the extent of a volume. The boundary of this volume is often referred to as a color gamut. RGB color spaces have usually a gamut boundary that is characterized by a cubic shape.

Values of the red, green and blue components that represent colors may be converted into other color spaces, and such a conversion may distort the shape of the gamut boundary. For instance, converting a RGB color space into the perceptually more uniform CIE L * a * b * color space results in an irregular gamut boundary. Conversions between different RGB color spaces, although each cubic in shape, correspond generally to rotation and/or scaling with respect to each other, dependent on the choice of primaries defining these color spaces. This is for instance the case for the two RGB color spaces defined by the ITU-R Rec. BT.709 and ITU-R Rec. BT.2020 standards. This means that representation of a color content specified in one RGB color space can typically be converted in another RGB color space through a linear matrix transform.

Preferred color spaces for color gamut mapping:

The application of a tone mapping algorithm may map colors of a content outside of a color gamut in which colors of the image should be included, in order, for instance, to be displayed. Likewise, the application of an inverse tone mapping algorithm may produce colors that are outside such a color gamut. In conventional applications of color processing, out-of-gamut colors are generally repositioned within the color gamut by means of a gamut mapping algorithm added to the tone or inverse tone mapping algorithm.

To maintain control over the visual quality of the output of these mapping algorithms, including tone or inverse-tone algorithms, all mapping operations are generally carried out in an appropriately chosen color space. A perceptual color space is generally used for such mapping operations, as in such a color space, Euclidean distance can be assumed to be a reasonable metric of perceptual color distance. Further, to ease such color mapping operations, it may be beneficial to separate lightness from two chromatic channels in the representation of colors, and to choose a chroma channel and a hue channel for the two chromatic channels. Such color spaces will be referred to in the following as "cylindrical color spaces", because hue is calculated as an angle, taking a range of values between 0 and 360 degrees.

The well-known CIELab and IPT perceptual color spaces can be converted into cylindrical color spaces. As an example, from the a and b channels of CIELab, correlates of chroma C and hue h can be derived by setting C = 2 + b 2 and h = tan -1 Q) . The lightness L remains unchanged relative to CIELab. The resulting color space is referred to as LCh. For the P and T channels of the IPT color space, identical calculations may be performed, i.e. C = VP 2 + T 2 and h = tan -1 ^). The lightness I remains unchanged relative to the IPT space. The resulting color space is then referred to as ICH.

A commonly used correlate of visual experience is that of saturation. In either cylindrical color space, saturation is often defined as chroma divided by lightness : in LCh, saturation s would therefore be s = as in IPT, saturation s would therefore be : s(C , /) = C/ 1. In embodiments described below, nonlinear definitions of the saturation with respect to chroma and lightness will be used instead.

As both CIELab and IPT can be defined as transformations from the XYZ color space, it is assumed known how conversions from any RGB color space to CIELab and IPT may be performed. Mapping colors in a color gamut:

Any given display device can be characterized in terms of its color gamut and dynamic range. A color content to be displayed by such a display device may have a different color gamut and a different dynamic range. If the display device has a wider gamut than this color content, it may be advantageous to expand color values representing colors of the content to better match the display's color gamut, thereby enhancing and representing colors of the content such that full advantage of the color gamut capabilities of the display device is obtained. Similarly, if the peak luminance of the display device exceeds that of the content, then the dynamic luminance range of the content may be expanded to match that of the display. All such adjustments should be carried out such that no colors of the content are mapped outside the display's color gamut.

Note that a color space (as discussed in the previous paragraph) is no more than a coordinate system, whereas a color gamut describes a boundary within such a coordinate system.

A current trend is toward the diversification of display capabilities. Professional content may be graded to a certain specification of color gamut and dynamic range. Some display devices will have higher specification while others may have lower. At the same time, display devices may receive color content that are not specifically graded to match displays capabilities. In such cases, a color management system is required to make color adjustments.

Partial solutions to a complete color management system exist, and may be combined to form a system that includes tone mapping, inverse tone mapping, chroma management as well as gamut boundary management. However, by stringing together such partial solutions, the complexity of the combined solutions may be unnecessarily high, and may be visually sub-optimal.

In particular, existing ITMO solutions focus on perceptually reproducing the appearance of the original scene and rely on strict assumptions about the content. In particular, they focus on the expansion of the luminance channel of an LDR content, taking into account the maximum luminance that is reproducible by the display device, i.e. its peak luminance. In complement to an expansion on the luminance channel of a LDR content, some state-of-art iTMO algorithms perform chroma correction on the chromatic channels of this content in the corresponding color space (e.g., YCbCr for television content). This chroma correction is generally designed to keep the visual aspects of the LDR content (e.g., saturation), without any control with regard to the actual chromatic boundaries of the color gamut of the display device, i.e. of the target color gamut. It means that iTMO algorithms may adapt a color content with respect to the luminance boundaries of a target color gamut, without any regard to the chromatic ones. This in return results in out-of-gamut chromatic content that is either clipped by the display device when the content is displayed, or should be mapped into the target gamut in a complementary mapping step. Note that such a target gamut can be that of a hypothetical display device, for instance the output container color space defined by the standard BT.2020.

Summary of invention

An aim of the invention is to process simultaneously the luminance channel and the chromatic channels of a color content, instead of processing these channels separately. An aim of the invention is also to perform this process along a mapping curve which is different from a straight line, to mean a non-linear relationship between luminance or lightness and chroma. Such a simultaneous process will advantageously enable any iTMO algorithm to increase the dynamic range of a color content while keeping better the visual appearance of the color content.

Advantageously, it is also proposed to implement this process using not only an inverse tone-mapping algorithm along this mapping curve, and by also a tone- mapping algorithm along the same mapping curve, this tone-mapping algorithm being designed to bring any out-of-gamut inverse-tone mapped colors back to the output color gamut without changing significantly in-gamut inverse-tone mapped colors, notably those which are located far away from the boundary of his output gamut.

Advantageously, it is also proposed to limit the complexity of the combined solutions of the prior art.

For these purposes, the subject of the invention is a method of color gamut mapping input colors of an input LDR content into output colors forming an output HDR content, from an input color gamut towards an output color gamut in a mapping color space that can be partitioned into 2D constant-hue slices having axes for lightness or luminance and chroma, said color gamut mapping method comprising, for each input color:

- expanding lightness or luminance and chroma of said input color in the constant-hue slice of said input color and along a mapping curve defining a nonlinear relationship between lightness / or luminance and chroma C, where said expanding comprises applying an inverse tone mapping algorithm to lightness or luminance and results in an expanded color.

The input and output color gamut can be linked to an image device or can be linked to a color space container as that defined in a standard. Those gamuts or color space containers can be described in a manner known per se by a descriptor.

Preferably, said relationship is defined such that the first order partial derivative of chroma with respect to lightness or luminance is strictly positive.

Preferably, said relationship is defined such that that the second order partial derivative of chroma with respect to lightness or luminance is positive.

Preferably, said relationship between lightness / and chroma C is defined by the following equation: C = k p(7),

where p (/) is a monotonically non-linearly increasing saturation compensation function defined such that that p(0) = 0, and where k is a scalar defined such that k = —— , where / in and C m are respectively the lightness and the chroma of said input color.

In a first variant, said saturation compensation function is defined by p ( /) = I q , where q is a saturation compensation exponent which is different from zero and different from 1 . Preferably, said saturation compensation exponent q is equal or superior to 1 .5, or is equal or inferior to 0.5.

In a second variant, said relationship between lightness / and chroma C is defined by the following equation : C = a (7) p(7) + k',

where p (/) is a monotonically non-linearly increasing saturation compensation function defined such that that p(0) = 0, where a(/) is defined as a correlate of chroma in a color appearance model (CAM), and where k' is a scalar defined such that k' = C in - a ( l in ) p ( l in ), where / in and C in are respectively the lightness and the chroma of said input color.

In a third variant, said relationship between lightness / and chroma C is defined by : C = ^ + o ,

where o is a chroma offset and Θ represents color saturation. Preferably, Θ =

Preferably, said expanding further comprises applying a tone mapping algorithm to luminance or lightness of said expanded color along said mapping curve, resulting in an output color forming said output content, wherein said tone mapping algorithm is designed to bring the expanded color inside the output color gamut if said expanded color is located out of said output color gamut. Preferably, said tone mapping algorithm is further designed to keep as unchanged as possible said expanded color if said expanded color is located inside the output color gamut. Preferably, said tone mapping algorithm is further designed to obtain a first linear compression of luminance or lightness for dark and mid-tone lightness levels that are inferior to a compression threshold / thresh and a second non-linear compression of luminance for high lightness levels that are superior to said compression threshold / thresh , wherein said second linear compression is higher than first linear compression. Preferably, said compression threshold / thresh is inferior but close to the luminance or lightness /g a u m Ut of a color defined as the intersection of said mapping curve g (C , 1) = 0 with said output color gamut.

A subject of the invention is also an image processing device comprising at least one processor configured to implement the above mapping method.

A subject of the invention is also an electronic device incorporating this image processing device, such as a TV set; a mobile device; a communication device; a game device; a tablet (or tablet computer) or a smartphone; a laptop; a camera ; an encoding chip; a server.

A subject of the invention is also a non-transitory storage medium carrying instructions of program code for executing steps of the mapping method above, when said program is executed on a computing device. Brief description of drawings

The invention will be more clearly understood on reading the description which follows, given by way of non-limiting example and with reference to the appended figure 1 describing a step (ii) of a main embodiment of the method of color gamut mapping according to the invention.

Description of embodiments

The functions of the various elements shown in the figure may be provided through the use of dedicated hardware as well as hardware capable of executing software in association with appropriate software. These functions may be substantially represented in computer readable media and so executed by a computer or processor, whether or not such computer or processor is explicitly shown. Explicit use of the term "processor" should not be construed to refer exclusively to hardware capable of executing software, and may implicitly include, without limitation, digital signal processor ("DSP") hardware, read-only memory ("ROM") for storing software, random access memory ("RAM"), and non-volatile storage.

A main general embodiment of the method of color gamut mapping will now be described in the following non-limiting context:

1 . An input LDR color content with input colors, as for instance an image or a video sequence comprising a plurality of images.

2. A description of an input color gamut in which input colors of the input color content are included. Such an input color gamut can be linked to an image capture device (e.g., RGB of this capture device). Such an input color gamut can be an input color space container as that defined in the standard ITU-R Rec. BT 709, herein abbreviated as BT709.

3. A description of an output color gamut in which the output color content should be included. Such an output color gamut can be linked to an image display device (e.g., R'G'B' of this display device). Such an output color gamut can be an output space container as that defined in the standard ITU-R Rec. BT 2020, herein abbreviated as BT2020. 4. A description of an inverse tone-mapping operator (iTMO) /() and of a mapping color space in which this iTMO is defined. Any known iTMO adapted for luminance expansion can be used. Any tone mapping curve that is monotonically increasing may be inverted to serve as an inverse tone mapping curve forming an iTMO. Preferably, this mapping color space is a perceptual color space such as Lab or IPT.

5. A description of a tone-mapping operator (TMO) £() applicable in the same mapping color space, defined to control the effect of the iTMO /() with respect to the boundaries of the output color gamut. More details are given below for this definition.

6. A relationship between luminance or lightness and chroma, expressing a desired perceptual aspect of the output color content. More details are given below for this relationship. For the sake of simplicity, in this main non-limiting embodiment of color gamut mapping, no change of hue is applied. More specifically, the color mapping of each input color is performed in the constant-hue slice of this input color. In a variant, an additional step of mapping the hue of input colors can be implemented.

About item 6 above, changes in luminance levels as that created by inverse tone mapping process may create images that may appear too color saturated, or not color saturated enough. This is notably due to a quirk of the human visual system, which appears to interpret brighter scenes as being more saturated, even if the color saturation itself is not affected by the inverse tone mapping. This is known as the Hunt effect. This means that, in processes of inverse tone mapping (as for any process involving a change in luminance), it is necessary to perform an additional adjustment to either saturation, or, equivalently, chroma, if no change of visual appearance of the content is desired.

To ensure that color saturation of an inverse tone mapped content is perceived correctly, the inverse tone mapping should not be applied to luminance or lightness values only. In other words, along this mapping process, it is proposed not only to map the luminance or lightness, but also the chroma C of input colors according to a non-linear relationship between luminance or lightness and chroma which therefore forms in a constant-hue slice a mapping curve different from a straight line in the mapping color space.

Such a non-linear relationship between luminance or lightness and chroma can be expressed by:

Equation No.4: g (C , I) = 0.

where g(,) is a non-linear function for at least one of the two variables C and /.

Each input color has its own mapping curve. In a first variant, this non-linear relationship is expressed according to :

Equation No. 1 : C = k p{I),

where p(/) is a monotonically non-linearly increasing saturation compensation function defined such that that p(0) = 0, where k is a scalar which is defined based on the input color to map, according to Equation No. 1 a: k =—— .

p(I ln )

Preferably, the saturation compensation function p() is defined according to Equation No. 2: p ( /) = I q ,

where q is a saturation compensation exponent different from 1 . For instance, q = 1 .5, 2 or 0.5.

Preferably, the saturation compensation function p() is defined such that its first derivative with respect to lightness / is strictly positive.

In a variant, the saturation compensation function p() is defined such that its second derivative with respect to / is negative.

Note that in case the saturation compensation function would have been linear (i.e. if q=1 ) and in case the saturation would have be defined as chroma divided by lightness, equation No. 1 would have meant keeping the saturation constant.

In a second variant, this non-linear relationship between luminance or lightness and chroma is expressed according to:

Equation No. 3: C = a(/) p(/) + k'

where p(/) is the same function as in the first variant above, where α(/) is a correlate of chroma used for the definition of a color appearance model (CAM).

where k' is a scalar which can be defined based on the input color to map, according to Equation No. 3b : k' = C in - a ( l in ) p ( l in ) .

For instance, when using the CIECAM2, such a correlate of chroma a(/) is defined according to:

a (/) = ^ (1.64 - 0.29") 0 - 73 V7,

where t is a temporary constant quantity defined in the CIECAM2.

For instance, when using a Color Appearance Model defined by Reinhard, such a correlate of chroma a / can be defined according to:

with a m , b m , d rn and τ being constants, and L max denoting the maximum output luminance of the display device linked to the output color gamut.

In a third variant, this non-linear relationship between luminance or lightness and chroma is expressed according to:

Equation No. 30: C = eW + o

where o is a chroma offset, and Θ is the color saturation preferably defined as

The interior of the color gamuts in the constant-hue slice is then covered by a family of mapping curves parameterized by values of Θ .

Preferably, the functions e(0), w(0), /c(0) , h(6) are defined such that the first order partial derivative of chroma C with respect to lightness / is strictly positive in order to have the chroma C monotonically increasing with respect to /. It means that we have:

Equation No. 31 : ^ > 0

Applying this requirement to Equation No. 30 leads to the following condition Equation No. 32: e(0) ¾(0) - w(0) fc(0) > 0 Preferably, the functions e(0), w(0), k(6) , h(6) are moreover defined such that the second order partial derivative of chroma C with respect to / is also positive. It means that if lightness increases, the chroma should increase proportionally more. It means that we have : Equation

No. 33: T

dl 2 > 0

By taking the second partial derivative of Equation No. 30 with respect to /, the condition of Equation No. 33 may be rewritten as follows:

Equation No. 34: r , 9 ] n ^ > 0

[fc(0) / +h(0)] 3

Equation No. 34 imposes a restriction on the choice of the functions /c(0) and /i(0) in one of two ways. Either /c(0) is negative for all values of 0 , leading to the following inequalities:

Equation No. 34a: V 0 : /c(0) < 0 and ¾(0) > - /c(0) / or the function fc(0) is positive for all values of 0 , leading to the following inequalities:

Equation No. 34b: V Θ ·. k{0) > 0 and /i(0) < - k{0) I

In complement to the two conditions above concerning the first and second derivatives, the two following conditions are preferably added:

1 . For 0 min > 0 or 0 max < 0 , the dynamic range expansion follows preferably straight lines. To meet this condition, we have preferably

: e (0) = 0 , w(0) = fc(0) = 0, /i(0) = 1 and o = 0. Equation No. 30 then becomes equivalent to Equation No. 35: c = θ I

2. The interior of the gamut in a given luminance-chroma plane is covered by a family of curves parameterized by values of 0. These curves should not cross each other within the color gamut, as this would lead to visually objectionable inversions. To prevent this, in one example the partial derivative of Equation No. 30 with respect to 0 should always remain positive. This condition may be described as follows:

Equation No. 36: V0 ε [0 min , 0 max ] : ¾ > 1 In one specific advantageous embodiment, to satisfy the four conditions above, functions e(0), w(0), /c(0) , /i(0) and o are as follows:

Equation No. 37: e(0) = 0,

Equation No. 38:

0 + a (0 m j n + 0 max ) 0— a $min ^max ^min < Θ . 0 max

'(0) = { α

0 otherwise

Equation No. 39: fc(0) = - w(0),

Equation No. 40: /i(0) = - fc(0) / max + 1 ,

Equation No. 41 : o = - ^^r

In Equation No. 38, a is a parameter that controls the curvature of the mapping curves specified by Equation No. 30. This parameter may be specified by the user to determine the most satisfying results. The range of values that parameter a may take is preferably bounded as follows. To satisfy Equation No. 36, a is bounded by a maximum that is a function of the smallest non-zero value of / denoted by e. Given Equation No. 38, a max may be then determined as follows:

Equation No. 42: a max = 1

For any given input pixel with lightness / in and chroma C in , the parameter 0 * may then be determined as follows. In the case that 0 min < C in // in < 0 max , Equation No. 29 is solved for 0 * , which may be written as:

Equation No. 43: C in = e( ? ' 2 + o

For the functions determined in Equation Nos. 37 - 41 , 0 * may be solved for a 4 th degree polynomial. As a 4 th degree polynomial would have to be solved for each input pixel, this may be computationally expensive. However, it is possible to simplify the problem by approximating the function w(0). One example of such a simplification is given by:

Equation No. 44: w(0) = a x

This simplification admits a closed form solution for Equation No. 43, which is computationally significantly more tractable. For the definition of w(0) as in Equation No. 44, the maximum value allowed for a, namely a max , is preferably determined as follows:

Equation No. 45: a max = ^ 2 e)

While the user would be free to select an appropriate value for the parameter a (in the range [0, a max ]), in certain use cases it may be appropriate to link the value of a to an analysis of the content. It may also be possible to set this parameter to a fixed value.

About item 5 above concerning the definition of the tone-mapper operator £(), let us states that:

- the intersection of the inverse-tone mapping curve g (C , /) = 0 described above with the input color gamut defines a maximum lightness input (/ gamut ) and

- the intersection of this inverse-tone mapping curve g (C , /) = 0 with the output color gamut defines a maximum lightness output (/g a u m Ut ).

When the application of the inverse tone mapping function of item 3 above (notably 1 st or 2 nd variant) results in lightness values that are superior to /g a u m Ut , corresponding then to out-of-gamut expanded colors, it is desired to bring these out-of-gamut colors inside the output color gamut. The tone-mapper operator £() of item 5 is designed to get this result when applied along the mapping curve g (C , I) = 0 to these out-of-gamut colors. This tone-mapper operator £() is preferably designed not only to bring out-of-gamut colors inside the output color gamut, but also to keep as unchanged as possible expanded colors that located already inside the output gamut boundaries.

It means notably that it is preferred to design the tone-mapper operator such as to compress a small highest portion of the dynamic range, keeping most of it unchanged or only slightly changed. Preferably, this highest portion of the dynamic range corresponds to a part of the mapping curve with a lightness above a threshold output lightness / thresh , where / thresh is inferior but preferably close to

^gamut■ A threshold color (^c thresh , / thresh ) md can be defined on the mapping curve as the boundary between this highest portion and the lowest portion of the dynamic range. More precisely, this tone-mapper operator can be defined for instance as in WO2016/192937 in order to allow a slight linear compression of luminance for dark and mid-tone lightness levels inferior to / thresh but a higher and non-linear compression of luminance for high lightness levels superior to / thresh .

Having defined items 1 to 6 above, the main general embodiment of the method of color gamut mapping comprises:

- (i) converting the input color content into the mapping color space,

- (ii) performing luminance-chroma expansion of the converted input color content in the constant-hue slice of each input color along non-straight mapping curves (therefore meeting conditions of item 6 above) and inside the output color gamut (see item 3 above), by applying the iTMO of item 4 above and, optionally, the TMO of item 5 above to its luminance channel,

- (iii) converting the expanded content of step (ii) into the output color space.

The main general embodiment of this method is detailed below along these steps (i) to (iii).

(i) Conversion into a mapping color space:

Using any well-known conversion method, the input LDR color content is converted into the device independent XYZ color space, from there to the LMS color space (equation No.8 below), from there to the IPT color space (equation No.6 below), and, from there, to the cylindrical IPT (i.e. ICH) color space (equation No.5 below), as follows:

Equation No. 5:

{" = tan " )

I L' 0,1000 0.4000 0.2000

Equation No. 6: P = W M' , with W 1 4.4550 - 4.8510 0.3960

-T- S' - .0.8056 0.3572 - 1.1628.

£0.43 if C > 0

Equation No. 7: C

i- 0.43

(-o otherwise " L X 0,1002 0.7075 - 0.0807

Equation No. 8: M = w 2 Y , with W 2 -0.2280 1.1500 0.0612

S . 2. . 0.0000 0.0000 0.9184 . where in Equation No. 7, C e {L, M,S} and C ε {L', M',S'} are calculated correspondingly. In Equation No. 1 , / stands for lightness, C for chroma and h for hue.

Similarly, the description of the input color gamut is converted into the mapping cylindrical color space ICh, and the description of the output color gamut is converted into the mapping cylindrical color space ICh.

Note that the mapping color space is three dimensional, and therefore so are the gamut boundaries. As the color mapping of each input color is performed in the constant-hue slice of this input color, these gamut boundaries can be represented in this constant-hue slice as a 2D lightness-chroma gamut curve.

(ii) Performing luminance-chroma expansion:

This step (ii) is illustrated on figure 1 .

As the input color content and the gamut boundaries are now converted into the mapping color space, luminance-chroma expansion can be now performed, in which the converted lightness Γ and the converted chroma C' n of a color of the converted input color content are mapped respectively into an output lightness /^ nd and an output chroma nd of an output color content such as the resulting mapped color is inside the output color gamut. a) Mapping along the achromatic channel:

Conventional iTMO algorithms are typically designed to expand the luminance channel / of a color content as part of an inverse tone mapping process. Such an iTMO algorithm may be applied to the input converted content in order to expand the achromatic channel of the content. Denoting this achromatic channel by /, such an iTMO algorithm is designed to expand the range [0,J™ ax ] of the input color content to a range [0, / ¾ of the output color content. Here, the iTMO algorithm is denoted by a function / out = / (/ in ) that is a one dimensional function acting solely on the achromatic channel. As, in the ICH mapping color space, the achromatic channel is not luminance but lightness (where lightness can be understood as a non-linear transform of luminance), the input J of the iTMO algorithm is temporarily converted forth and back using Equation No. 9 and Equation No. 10 to the lightness channel / using a conversion function denoted by £ :

Equation No. 9: / = £ (/ ) = I 2A , and:

Equation No. 10: £ _1 (/ ) = J 1/2A

The iTMO algorithm / (/ ) could therefore be applied on the lightness axis / of the mapping color space as follows:

Equation No. 1 1 : / out = £ _1 {f (£ (/ in )))

Applying the iTMO algorithm f() corresponds to a mapping of only lightness /. However, such a mapping would likely not produce chroma values that match visual expectation. In other words, the saturation of the lightness-mapped content will appear visually too low, notably due to the Hunt effect (quoted above). b) Simultaneously mapping chroma along non-straight mapping curves:

While applying the iTMO algorithm f(), the non-linear relationship between lightness and chroma according to item 6 above is kept, resulting in an expansion of chroma Cin into a C out .

When using the non-linear relationship between luminance or lightness and chroma as defined in its first variant above in equation No. 1 , the chroma C' n is mapped into a chroma C out according to:

Equation No. 12: C out = C in

p(/ m )

Using equation No. 2 defining p(/) and Equation No. 1 1 above, we have: Equation No. 12a: C out = ^ ( £- f (£ ( / in )) ))".

where q is the saturation compensation exponent defined above.

j out

Note that if q=1 , we would have had:C out = C in

Note that, if a linear relationship between lightness and chroma (i.e. q=1 ) out

would be used instead of a non-linear one (C out = C m — ), and/or if saturation would be defined as the ratio of chroma and lightness, the visual quality of the mapped colors would have been better than those that can be obtained by mapping luminance or lightness only. But, such a definition of saturation is approximate in itself. A non-linear relationship between chroma and lightness actually produce a visually better result. That is why it is preferred to have the saturation compensation exponent q different from 1 . Preferred values are for instance, q = 1 .5, 2 or 0.5.

When using the non-linear relationship between luminance or lightness and chroma as defined in its second variant above in equation No. 3, it is proposed to map the chroma C in into a chroma C out according to:

Equation No. 13: C out = C in + a(/ 0Ut )p(7 0Ut ) - α(ΐ ίη )ρ(ΐ ίη )

Using equation No. 2 defining p(/) and Equation No. 1 1 above, we have then Equation No. 13a:

C out = C in + a (£-l (f (£ ( /in)) )) ( £-! ( (£ ( /in)) )^ _ a ίη ) ( 1 ίη )

Preferably, the saturation compensation exponent q is inferior to 1 . In this situation, the second derivative with respect to / of the saturation compensation function p() is negative. For instance, q = 0.5.

When using the non-linear relationship between luminance or lightness and chroma as defined in its third variant above, it is proposed to map the chroma C in into a chroma C out according to the corresponding equation No. 30 above. c) Mapping with respect of the gamut boundaries:

A third condition for the mapping of colors of the converted input content is that the resulting mapped colors should be located inside the converted output color gamut, as described according to item 3 above, this description being converted in sub-step a) above in the mapping color space. As a matter of fact, the expanded or mapped colors (C out , / out ) resulting from steps (ii)-a) and (ii)-b) above that have a lightness superior to the maximum lightness output /g a u m Ut are then located out the output color gamut.

To obtain the third condition above notably when the first or second variant above of the inverse tone mapping operator are implemented, it is proposed to apply along the same mapping curve the tone-mapping operator of item 4 to the expanded colors resulting from steps (ii)-b) above.

Applying this tone-mapper operator to the lightness channel of the lightness-mapped colors obtained from steps (ii)-a) and (ii)-b) will then give /^ nd

Equation No. 14:

The corresponding chroma nd is obtained by applying the equation of the mapping curve :

Equation No. 4a: # (C' nd , /' nd ) = 0

(c<i nd , /t nd ) cuppled with the corresponding hue is the final mapped output color. As the tone-mapper operator () is designed to bring out-of-gamut colors inside the output color gamut, the resulting colors (Q nd , /^ nd ) are all located inside the output color gamut. As the tone-mapper operator X() is designed to keep as unchanged as possible colors that were already located inside the output gamut boundaries, the effect of expansion of luminance or lightness provided by the inverse tone mapping algorithm is kept.

An advantage of using the third variant above of the inverse tone mapping operator is that this tone mapping step c) can be avoided.

(iii) converting the expanded content of step (ii) into the output color space The gamut mapped results of the previous step (ii) are finally converted from the mapping color space to the output color space. Assuming that the transformations between the device independent XYZ color space and the output device color space are known through the third input of the framework (item 3 above), the results are transformed back to the device independent XYZ color space. For the example of ICH being the mapping color space, this conversion uses for instance the following equations 5a to 8a, similar respectively to equations 5 to 8 above:

X L 1.8502 - 1.1383 0.2384

Equation No. 8a: Y = w 3 M , w 3 = 0.3668 0.6439 - - 0.0107

2. S . 0.0000 0.0000 1.0889. r r ,0A3

Equation No. 7a: C ,

I- (-C)

V I 1.0000 0.0976 0.2052

Equation No. 6a: AT = W 4 P w 4 = 1.0000 - 1.1139 0.1332

S' . -T- .1.0000 0.0326 - - 0.6769.

Equation No. 5a:

where in Equation No. 7b, C ε {L, M,S} and C ε {L', M',S'}.

At the end of this color gamut mapping process, an HDR output color content is obtained. The above method of color gamut mapping can be implemented in any image processing device using at least one processor configured to implement this method. Such an image processing device can be incorporated in an electronic device, such as a TV set; a mobile device; a communication device; a game device; a tablet (or tablet computer) or a smartphone; a laptop; a camera; an encoding chip; a server.

It is to be understood that this method may be implemented in various forms of hardware, software, firmware, special purpose processors, or combinations thereof. This method may be notably implemented as a combination of hardware and software. Moreover, the software may be implemented as an application program tangibly embodied on a program storage unit. The application program may be uploaded to, and executed by, an image processing unit comprising any suitable architecture. Preferably, this unit is implemented on a computer platform having hardware such as one or more central processing units ("CPU"), a random access memory ("RAM"), and input/output ("I/O") interfaces. The computer platform may also include an operating system and microinstruction code. The various processes and functions described herein may be either part of the microinstruction code or part of the application program, or any combination thereof, which may be executed by a CPU. In addition, various other peripheral units may be connected to the computer platform such as an additional data storage unit and an image device, such as an image display device or an image capture device.

All embodiments and examples of the present invention are intended to encompass both structural and functional equivalents thereof. Additionally, it is intended that such equivalents include both currently known equivalents as well as equivalents developed in the future, i.e., any elements developed that perform the same function, regardless of structure.