Method, device and apparatus for avoiding chroma clipping in a tone mapper while maintaining saturation and preserving hue
A method comprising modifying a color correction function intended to correct initial chroma components of a current image to obtain normalized corrected chroma components for avoiding the clipping of the initial chroma components while maintaining saturation and preserving hue.
1 . A method for modifying a color correction function intended to correct initial chroma components of a current image represented by an initial luma component and the initial chroma components to obtain corrected chroma components, the color correction function being defined by a set of initial tuples comprising a first coordinate and a second coordinate, the method comprising, for the current image:
segmenting a range of luminance values of the initial luma component in partial luminance ranges, each frontier between two consecutive partial luminance ranges depending on a first coordinate of one of the initial tuples;
estimating an attenuation value for the initial chroma components in at least one partial luminance range, each attenuation value allowing lowering the initial chroma components to avoid a clipping of the initial chroma components;
determining a global attenuation value for the initial chroma components using the estimated attenuation values;
computing a factor for each partial luminance range allowing maintaining a saturation in each partial luminance range based on the global attenuation value and the attenuation value associated to the partial luminance range;
for each frontier between two consecutive luminance ranges, computing a minimum factor representing a minimum of the factors computed for these two consecutive partial luminance ranges;
computing a final correction factor for each frontier between two consecutives partial luminance ranges based on the minimum factor corresponding to the frontier and the global attenuation value; and
modifying the second coordinate of at least one of the initial tuples using the final correction factors to obtain new tuples defining a new color correction function.
2 . The method of claim 1 , wherein the method comprises a temporal stabilization of the new tuples comprising computing the new tuples based on a filtering using new tuples computed for images preceding the current image in a sequence of images.
3 . The method of claim 2 , wherein the temporal stabilization is executed in a set of images of the sequence of images belonging to a same scene between two scene cuts.
4 . The method of claim 1 , further comprising:
applying a color correction on the initial chroma components based on the new color correction function.
5 . The method of claim 1 , further comprising:
transmitting data representative of the new tuples to the client system in the form of metadata.
6 . An apparatus for modifying a color correction function intended to correct initial chroma components of a current image represented by an initial luma component and the initial chroma components to obtain corrected chroma components, the color correction function being defined by a set of initial tuples comprising a first coordinate and a second coordinate, the apparatus comprising electronic circuitry configured for:
segmenting a range of luminance values of the initial luma component in partial luminance ranges, each frontier between two consecutive partial luminance ranges depending on a first coordinate of one of the initial tuples;
estimating an attenuation value for the initial chroma components in at least one partial luminance range, each attenuation value allowing lowering the initial chroma components to avoid a clipping of the initial chroma components;
determining a global attenuation value for the initial chroma components using the estimated attenuation values determined for each partial luminance range;
computing a factor for each partial luminance range allowing maintaining a saturation in each partial luminance range based on the global attenuation value and the attenuation value associated to the partial luminance range;
computing, for each frontier between two consecutive luminance ranges, a minimum factor representing a minimum of the factors computed for these two consecutive partial luminance ranges;
computing a final correction factor for each frontier between two consecutives partial luminance ranges based on the minimum factor corresponding to the frontier and the global attenuation value; and
modifying the second coordinate of at least one of the initial tuples using the final correction factors to obtain new tuples defining a new color correction function.
7 . The apparatus of claim 6 , wherein the electronic circuitry is further configured for applying a temporal stabilization of the new tuples comprising computing the new tuples based on a filtering using new tuples computed for images preceding the current image in a sequence of images.
8 . The apparatus of claim 7 , comprising electronic circuitry configured for applying the temporal stabilization in a set of images of the sequence of images belonging to a same scene between two scene cuts.
9 . The apparatus of claim 6 , further comprising:
electronic circuitry configured for applying a color correction on the initial chroma components based on the new color correction function.
10 . The apparatus of claim 6 , further comprising:
electronic circuitry configured for transmitting data representative of the new tuples to the client system in the form of metadata.
11 . A non-transitory information storage medium storing program code instructions, which when executed by one or more processors, cause the one or more processors to implement a method for modifying a color correction function intended to correct initial chroma components of a current image represented by an initial luma component and the initial chroma components to obtain corrected chroma components, the color correction function being defined by a set of initial tuples comprising a first coordinate and a second coordinate, the method comprising, for the current image:
segmenting a range of luminance values of the initial luma component in partial luminance ranges, each frontier between two consecutive partial luminance ranges depending on a first coordinate of one of the initial tuples;
estimating an attenuation value for the initial chroma components in at least one partial luminance range, each attenuation value allowing lowering the initial chroma components to avoid a clipping of the initial chroma components;
determining a global attenuation value for the initial chroma components using the estimated attenuation values;
computing a factor for each partial luminance range allowing maintaining a saturation in each partial luminance range based on the global attenuation value and the attenuation value associated to the partial luminance range;
for each frontier between two consecutive luminance ranges, computing a minimum factor representing a minimum of the factors computed for these two consecutive partial luminance ranges;
computing a final correction factor for each frontier between two consecutives partial luminance ranges based on the minimum factor corresponding to the frontier and the global attenuation value; and
modifying the second coordinate of at least one of the initial tuples using the final correction factors to obtain new tuples defining a new color correction function.
12 . The non-transitory information storage medium of claim 11 , wherein the method comprises a temporal stabilization of the new tuples comprising computing the new tuples based on a filtering using new tuples computed for images preceding the current image in a sequence of images.
13 . The non-transitory information storage medium of claim 12 , wherein the temporal stabilization is executed in a set of images of the sequence of images belonging to a same scene between two scene cuts.
14 . The non-transitory information storage medium of claim 11 , wherein the method further comprises:
applying a color correction on the initial chroma components based on the new color correction function.
15 . The non-transitory information storage medium of claim 11 , wherein the method further comprises:
transmitting data representative of the new tuples to the client system in the form of metadata.