Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
PICTURE SIGNAL ENHANCEMENT
Document Type and Number:
WIPO Patent Application WO/2001/059183
Kind Code:
A2
Abstract:
In a method of picture signal enhancement, a picture signal is subjected (3, 7) to a histogram-based picture signal modification based on a luminance level distribution over a whole picture or a first part of the picture, and the histogram-based picture signal modification is locally adjusted (5) in dependence on locally measured picture signal properties other than contrast and brightness, the locally measured picture signal relating to second parts of the picture that are each substantially smaller than the whole picture or the first part of the picture, the second parts being within the whole picture or the first part of the picture. Preferably, the second parts are individual pixels.

Inventors:
NICOLAS MARINA M P (NL)
NIEUWENHUIZEN MICHEL W (NL)
Application Number:
PCT/EP2001/001653
Publication Date:
August 16, 2001
Filing Date:
February 13, 2001
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
KONINKL PHILIPS ELECTRONICS NV (NL)
NICOLAS MARINA M P (NL)
NIEUWENHUIZEN MICHEL W (NL)
International Classes:
C23G1/00; G06T1/00; G06T5/00; G06T5/40; H04N1/407; H04N1/46; H04N1/60; H04N9/64; (IPC1-7): C23G1/00
Domestic Patent References:
WO1995031877A21995-11-23
Foreign References:
EP0747855A21996-12-11
EP0833501A21998-04-01
Other References:
"A Visibility Matching Tone Reproduction Operator for High Dynamic Range Scenes", IEEE TRANS VISUAL COMP GRAPH, vol. 3, no. 4, 1997, pages 291 - 306
Attorney, Agent or Firm:
Schoenmaker, Maarten (Internationaal Octrooibureau B.V. Prof. Holstlaan 6 AA Eindhoven, NL)
Download PDF:
Claims:
CLAIMS :
1. A method of picture signal enhancement, the method comprising the steps of : subjecting (3, 7) a picture signal to a histogrambased picture signal modification based on a luminance level distribution over a whole picture or a first part of the picture ; and locally adjusting (5) the histogrambased picture signal modification in dependence on locally measured picture signal properties other than contrast and brightness, the locally measured picture signal properties relating to second parts of the picture that are each substantially smaller than the whole picture or the first part of the picture, the second parts being within the whole picture or the first part of the picture.
2. A method as claimed in claim 1, wherein a maximum local adjustment is carried out in a center of a detection domain of the locally measured picture signal properties, and no local adjustment is carried out outside or at limits of the detection domain, the local adjustment varying substantially continuously from the center of the detection domain towards the limits of the detection domain.
3. A method as claimed in claim 1, wherein the locally measured picture signal properties are color and/or texture.
4. A method as claimed in claim 3, wherein the locally measured picture signal properties indicate whether the second part relates to skin.
5. A method as claimed in claim 1, wherein the second parts are individual pixels.
6. A picture signal enhancement device, comprising : means for subjecting (3, 7) a picture signal to a histogrambased picture signal modification based on a luminance level distribution over a whole picture or a first part of the picture ; and means for locally adjusting (5) the histogrambased picture signal modification in dependence on locally measured picture signal properties other than contrast and brightness, the locally measured picture signal properties relating to second parts of the picture that are each substantially smaller than the whole picture or the first part of the picture, the second parts being within the whole picture or the first part of the picture.
7. A display apparatus, comprising : a picture signal enhancement device as claimed in claim 6 for generating an enhanced picture signal ; and a display unit (D) for displaying the enhanced picture signal.
Description:
Picture signal enhancement.

The invention relates to a method and device for picture signal enhancement, as well as to a display apparatus comprising such a picture signal enhancement device.

EP-A-0, 747, 855 discloses a method of improving the contrast in a natural scene image. A relevant histogram of the image is derived from a selected subset of local histograms representing regions of the image. The signal describing the histogram is operated on with a filter having the characteristic of weakening strong peaks and valleys in the function, but not effecting flat portions of the signal. The filtered histogram signal is used for controlling the TRC mapping in a device at which the image is to be printed. To assure optimum selection of local histograms, regions including the black point and white point of an image are determined and added to the subset of local histograms representing regions of the image.

EP-A-0, 833, 501 discloses an image enhancement circuit in which an enhanced luminance signal is output by independently equalizing histograms for sub-images divided on the basis of the mean value of the received luminance signal. A local contrast defined as a difference between the value of an input sample with respect to the enhanced luminance signal and each value obtained by low-pass filtering the samples in a predetermined-sized window including the input sample, and the input sample value is adaptively weighted according to a detected local contrast, so that a changed luminance signal is output.

In the field of picture improvement, histogram modification algorithms are contrast/detail enhancement algorithms based on the luminance level distribution over a whole picture (or the whole relevant part of it). Because the measurement is made globally and does not take into account textures or color components, histogram modification algorithms can be less optimized in special texture or color regions. Typical local histogram modification algorithms, based on local measurement, are usually not suitable for picture improvement because they lead to continuity artifacts. A common version of such a typical local histogram modification algorithm is first to decompose the picture in simple spatial blocks, either orthogonal ones or corresponding to the limits of objects in the picture, and then to apply the same algorithm for each block, but only taking into account the histogram distribution of the given block. A major problem in this kind of algorithm is formed by the"blocking"artifacts.

Another more elaborate version is first decompose the picture in different zones depending on their color/texture properties, and then apply different algorithms for the different zones to optimize individually each color/structure block. A major problem in this kind of algorithm is the continuity problem due to the switching of one algorithm to another and the artifacts due to the fact that the detection can never be perfect.

It is, inter alia, an object of the invention to provide an improved picture signal enhancement. To this end, the invention provides a picture signal enhancement as defined in the independent claims. Advantageous embodiments are defined in the dependent claims.

In a method of picture signal enhancement in accordance with a primary aspect of the invention, a picture signal is subjected to a histogram-based picture signal modification based on a luminance level distribution over a whole picture or a first part of the picture, and the histogram-based picture signal modification is locally adjusted in dependence on locally measured picture signal properties other than contrast and brightness, the locally measured picture signal properties relating to second parts of the picture that are each substantially smaller than the whole picture or the first part of the picture, the second parts being within the whole picture or the first part of the picture. Preferably, the second parts are individual pixels.

While the second parts for which picture signal properties are measured and for which the histogram-based picture signal modification is locally adjusted, are each substantially smaller than the whole picture or the first part of the picture, it might very well turn out that (substantially) identical local adjustments are made for a substantial part of the whole picture or the first part, for example, if skin tone turns out to occupy such a substantial part.

These and other aspects of the invention will be apparent from and elucidated with reference to the embodiments described hereinafter.

In the drawings : Fig. 1 shows a basic block diagram of a first embodiment of a display apparatus comprising a picture signal enhancement device according to the invention ; Fig. 2 shows two parameters as a function of the luminance ; Fig. 3 shows a skin-tone to histogram correction for different parameter settings ; Fig. 4 shows part of the block diagram of Fig. 1 in more detail ; Fig. 5 illustrates the skin-tone detection domain in YUV ; Fig. 6 illustrates the skin-tone detection domain in UV for Y>256 ;

Fig. 7 illustrates the skin-tone detection domain in Vrefl, Vref2 for Y>256 ; and Fig. 8 illustrates the correction factor depending on the position in the skin-tone detection domain.

The solution proposed by the present invention is a slight local modulation of the original histogram modification, where the local modulation parameter is defined by the local color or texture characteristics. A basic block diagram of the solution is shown in Fig. 1.

In the local color/texture detection block 1, different measurements of YUV are done for each pixel to determine whether the pixel belongs to an area with particular color or textures characteristics, to obtain a correction factor cor-fac that will be explained in detail below. The luminance signal Y is also applied to a histogram modification block 3 to obtain a value delta_y. The correction factor cor-fac and the histogram value delta_y are applied to a local color/texture correction block 5 to produce a value local-delta-y. A LJV histogram correction block 7 produces output values Yout, Uout and Vout in response to the input UV signals, the correction factor cor-fac, and the value local-delta-y.

For each detection type, a correction factor cor-fac is defined with the values : 0 if the pixel is outside or at the limits of the corresponding detection domain, and Max value at the center of the corresponding detection domain.

The value of the correction factor cor-fac increases continuously as the pixel moves from the limits of the detection domain to the center of the detection domain. A clipping can be done so that the Max value is assigned to a more or less large zone around the center of the detection domain.

Herein, the detection domain depends on what one wants to detect. Basically properties are defined that identify the domain. For instance, for skin tone, one wants the YUV point inside a kind of truncated simple geometric form within the YUV domain. The idea is that the correction factor cor-fac gives a slight modulation on the original histogram modification. The original histogram modification is optimal for most signal conditions, for most (80%) colors or textures. Only in some limited cases, like skin tone, grass etc., it is desired to have a slightly different histogram modification. The detection domain limits the areas where your original histogram modification needs to be slightly adjusted. Compared to the whole YUV domain, it has to be relatively small. Otherwise it just means that your original histogram modification is not designed properly, since it is then not suitable for most conditions.

A typical value for Max value of the correction factor cor-fac is chosen depending on the effect wanted at the center of the detection domain. One will generally choose one of the values 4, 8, 16 or 32 to allow easy computations. Then the choice is determined by : -The sensitivity required in the steps of histogram, as what one wants to avoid is to see ugly steps of the histogram in the corrected domain. For skin tone, it is preferable to be on the safe side, because one has to deal with relatively flat luminance domains and because the human eye is very sensitive in skin tone. In most cases, a value above 32 (64) is useless, considering that differential gains introduced in the histogram are never so big that one would need 64 steps in the modulation effect.

-The maximum modulation that is wanted. 4 or 8 look risky, but they can be chosen if the modulation effect should not be too large. Then it is a question of normalizing the gain of the function Fy mentioned below.

The functions local-delta-y = Fy (corfac, deltay) localdeltau = Fu (corfac, deltay, U, Y) local delta v = Fv (corfac, deltay, V, Y) are all functions for which it holds that the absolute value of the difference between local delta x and delta-x (with x = y, it, v) is monotonously rising with the parameter corfac, with the condition : local-delta-y = delta-y for cor-fac = 0 local delta u = delta_u for corfac = 0 local delta v = delta_v for corfac = 0 with delta_v, delta_u and delta-v equal to what one gets in the original histogram algorithm.

The advantages of this solution are that : -The whole picture, including special color or texture regions still globally benefit from the global histogram modification algorithm.

-Histogram modification algorithms can be roughly optimized globally, the correction factor will do the final fine adjustment. There is no need to develop different histogram algorithms for each color/texture type.

-The correction algorithms are rather independent from the global histogram modification algorithms.

-The local correction allows dedicated improvements for special color or textures regions without continuity problems.

-The precision of the detection domain becomes less critical because the correction factor is reduced to 0 at the limits of the domain.

-The system is rather flexible. It can be reduced to its minimum, for instance with a color detector based on UV only and a correction factor which only switches off the color compensation in the UV histogram correction block. The system can be easily extended with a new additional detection domain.

The idea is as follows : in an original histogram modification, look at the Y level distribution and calculate a delta Y. If only a correction on Y is applied, one usually gets a saturation problem. So it is necessary to compensate by a de ! taU and delta. A 100% correction can be chosen for, in which case delta = (deltaY/Y) * U and delta V = (delta_Y/Y) * V. It is also possible to compensate for 50% or to compensate only when delta Y > 0, which would be preferred in a dynamic contrast algorithm.

At the moment that the delta_Y is corrected locally, it is also necessary to use localdeltay for the correction of U and V : if a 100% correction is desired, de ! taU = (localdeltay/Y) * U and delta = (local_delta_y/Y) * V. Basically this can be written this delta U = Fu (local-delta-Y, U, Y) and delta = Fv (local-delta-y, V, Y).

In the last formula, the correction factor has disappeared. It means that the same type of U, V compensation (100%, 50% or only for delta_Y > 0) is made in-and outside the correction domain. Actually, situations could exist where it is not desired to have the same kind of compensation in-and outside the correction domain. That is why the following formulation is preferred : delta U = Fu (corfac, deltay, U, Y). delta_V = Fv (cor_fac, delta_y, V, Y) In a practical embodiment, de ! taU and delta are the same as local delta u and local delta v.

The formulas look actually much more complicated that it is in practice. First of all, Fu and Fv will almost always be the same, and basically in most cases Fu (corfac, deltay, U, Y) = Ful (delta_y, U, Y) for correction _factor = 0

Fu2 (delta, U, Y) for correction factor > 0 local-delta-u = Uout-U local-delta-v = Vout-V The following examples for Fy, Fu and Fv can be given : Example 1 : For skin tone, suppose that cor-fac = 32 at the center of the skin domain and that it is desired to have the all the skins lighter than what the original histogram gives : Fy (corfac, deltay) = delta Y * (32 + cor fac)/32 for delta Y > 0 Fy (corfac, deltay) = delta Y * (32-cor-fac) 32 for delta-Y < 0 Fu (corfac, deltay, U, Y) = U * (delta_Y * (32 + cor_fac) / 32) / Y for delta_Y > 0 and Fu (corfac, deltay, U, Y) = U * (delta_Y * (32 - cor_fac) / 32) / Y for delta_Y < 0 Same for Fv.

In that case, for typical skin tone, one gets local delta Y = 2 * delta Y for delta Y > 0 and local delta Y = 0 for delta Y < 0.

This means the skin is just made lighter. The U, V compensation is 100%.

Example 2.

Suppose a domain where it is not desired to change the histogram itself but rather to do the U, V compensation differently. In the rest of the picture, one has a 100% compensation, but in that specific domain, it is just not desired to desaturate when delta Y < 0.

In that case one would choose Fy (corfac, deltay) = delta_y Fu (corfac, deltay, U, Y) = U * (delta Y * (32 + cor_fac) / 32) / Y for delta_Y > 0 and Fu(cor_fac, delta_y U, Y) = 0 for delta_Y <= 0 Same for Fv.

The important thing in Fy, Fu and Fv is the continuity of the function.

The system is especially suitable for special color and textures. It has been applied with success to improve the performance of histogram algorithms in skin tone regions.

The weak points of the prior art global histogram algorithm considered were that darker skins were made too dark, and white spots on bright faces tended to be worsened. In that case, the correction factor determines the amount of correction depending on the position in the skin domain. It is equal to 0 at the limits of the domain and to 32 at the center of the skin domain.

The output of the local color/texture correction block 1 is : LocalDelta _ y = (Local _ pos _ gain (Y) * max (0, Delta _ y + max (Delta _ Y, delta _ yo) + Local _ neg _ gain (Y) * min (0, Delta _ y + min (Delta _ Y,-delta _ yo)- 4 * Delta _ y) * cor _ fac/128 + Delta _ y where deltavo is given a small positive value.

Local_pos_gain (Y) and Localneggain (Y) are as shown in Fig. 2.

LocalDelta u = Delta u Local Delta v = Delta v This simple algorithm helps substantially to reduce the problems of the histogram algorithm in skin tones, without creating new artifacts, nor affecting the rest of the picture. A similar concept can be applied to improve the histogram performance in other color areas, like green. The system can also be applied to textures. The input of the local measurement consists then of the YUV of the current pixel and the YUV of the neighboring pixels.

Histogram modification algorithms are contrast/detail enhancement algorithms based on the luminance level distribution measured over the whole picture. Because the measurement is made globally and does not take into account textures or color components, histogram modification algorithms can be less optimized in special texture or color regions. In particular skin tones, which are very critical for the human eye, can be degraded by histogram algorithms. Common cases are too much black-stretch in a dark skin or too much white stretch in an already very bright skin. (Herein, dark skins and bright skins are defined by the luminance level of the skin tone ; they do not refer to any racial skin differences.) Therefore there is a need to couple locally skin tone to the histogram correction.

The basic block diagram of the skin tone/histogram algorithm is again as shown in Fig. 1. The local color/texture measurement block 1 now performs a skin-tone detection. The local color/texture correction block 5 now performs a histo-skin correction.

Basic criteria for the development of the algorithm are : -The coupling needs to remain simple. At the end of the original modification algorithm, a correction factor, coming from the skin tone detector allows a slight modulation of delta-y to local-delta v.

-This allows developing a coupling algorithm that is rather independent from the histogram modification algorithm chosen.

-Different histogram algorithms are likely to go wrong in a different way in skin tone regions. 6 parameters are introduced to allow any kind of situation to be corrected. They change the gain of the histogram modification locally or add an offset to get skins darker or brighter. Different corrections can be done for dark and bright skins. The parameters are fully described below. One could also eventually couple these parameters to the skin tone angle chosen in the skin tone correction color algorithm.

The skin tone detection is very close to the one in the color algorithm block.

The parameter cor fac determines the amount of correction depending on the position in the skin domain. At the center of the skin domain, cor_ fac is at maximum at a value of 32. At the limit of the skin domain, for continuity reasons, it must be equal to 0.

6 parameters allow an adjustment of the coupling skin tone/histogram : 1. max dark skin defines the maximum level of luminance corresponding to dark skins. max-dark-skin can be adjusted from 0 to 31 (corresponds to the index in the LUT for a given Y level).

2. min bright skin defines the minimum level of luminance corresponding to bright skins. min_bright_skin can be adjusted from 0 to 31 (corresponds to the index in the LUT for a given Y level). For a proper working of the algorithm, min bright skin should be chosen equal or higher than max dark skin.

3. dark ; os_gain defines the type of skin tone-histogram correction for dark skins if dark skins are boosted (deltay > 0). It can be adjusted from 0 to 4 with <BR> <BR> <BR> <BR> (dark _ pos _ gain - 2) * cor _ fac * Delta _ y<BR> LocalDelta _ y = + Delta _ y 64 for Delta _ y > 0 and index(Y) < max_dark _ skin

4. dark_neg_gain defines the type of skin tone-histogram correction for dark skins if dark skins are blackstreched (delta_y < 0). It can be adjusted from 0 to 4 with <BR> <BR> <BR> (dark _ neg _ gain - 2) * correction _ factor * Delta _ y<BR> <BR> LocalDelta _ y + Delta _ y<BR> 64 for delta _ y < 0 and index (Y) < max_ dark _ skin 5. bright-pos-gain defines the type of skin tone-histogram correction for bright skins if bright skins are boosted (delta_y> 0). It can be adjusted from 0 to 4 with <BR> <BR> <BR> (bright _ pos _ gain - 2) * correction _ factor * Delta _ y<BR> LocalDelta _ y = + Delta _ y 64 for Delta _ y > 0 and index(Y) > min_ bright _ skin 6. bright_neg_gain defines the type of skin tone-histogram correction for bright skins if bright skin levels are reduced (delta_y < 0). It can be adjusted from 0 to 4 with <BR> <BR> <BR> (bright _ neg _ gain - 2) * correction _ factor * Delta _ y<BR> LocalDelta _ y = + Delta _ y 64 for delta _ y < 0 and index(Y) > min_ bright _ skin Continuity of the formula around delta-y = 0 These formulas are however not always suitable for delta-Y around 0. For instance, the situation dark-pos-gain = 4 and dark_neg_gain = 0 means less black-stretch of dark skins and more boosting of dark skins. This can also be interpreted simply as Dark skins should be lighter. This leads to a new formula for abs (Delta _ y) < delta _ yo : LocalDelta _ y = Delta _ y + cor_fac*(dark_pos_gain_dark_neg_gain)*delta_yo+ <BR> <BR> <BR> cor _ fac (dark _ pos _ gain + dark _ neg _ gain)<BR> * - 2) * Delta _ y 64 2 A general formula for the whole delta_y range is: LocalDelta _ y = (dark _ pos _ gain * max (0, Delta _ y + max (Delta _ y, delta _ yo) + dark _ neg _ gain * min (0, Delta _ y + min (Delta _ Y,-delta _ yo)- 4*Delta _ y) *cor_fac/128 + Delta _ y A similar formula is derived for bright skins around delta-Y = 0. In the algorithm, the value delta vo was chosen equal to 5.

Fig. 3 shows Localdelta_y as function of delta, in the center of the skin domain (i. e. at corfac = 32) for different combinations of dark_pos_gain and dark_neg_gain.

In this way, we get the possibility to reduce or increase the effect of histogram in dark skins, and to make dark skins lighter or darker. Similar possibilities are implemented for bright skins.

Transition between max dark skin and min bright skin.

The choice of max dark skin and min bright skin allows to make different corrections on the histogram in low luminance and bright luminance regions. Normally min bright skin is chosen higher than max dark skin. A smooth transition from dark parameters to bright parameters is made.

We then get general formulas over the whole luminance range : <BR> <BR> <BR> <BR> (Local _ pos _ gain - 2) * cor _ fac * delta _ y<BR> Local _ Delta _ Y = + delta _ y 64 for Delta _ y > 0 with Local _ pos _ gain = dark _ pos _ gain for index(Y) # max_ dark _ skin <BR> <BR> <BR> <BR> <BR> <BR> (bright _ pos _ gain - dark _ pos _ gain)<BR> Local _ pos _ gain = dark _ pos _ gain + 4 min_bright_skin-max_dark_skin) for max_dark _ skin < index(Y) # max_dark_skin + <BR> <BR> <BR> <BR> <BR> <BR> 4<BR> Local _ pos _ gain = dark _ pos _ gain + ###### # ### # #### # #### #### # #####<BR> <BR> <BR> 2<BR> <BR> <BR> <BR> <BR> (min bright skin-max dark skin)<BR> 2<BR> for max_ dark _ skin + < index(Y) #<BR> <BR> 4<BR> <BR> <BR> <BR> (min_bright _ skin - max_ dark _ skin)<BR> max_dark _ skin +<BR> 2<BR> (dark _ pos _ gain _ bright _ pos _ gain) Local _ pos _ gain = bright _ pos _ gain + 2

(min_ bright _ skin - max_ dark _ skin)<BR> <BR> <BR> <BR> <BR> <BR> <BR> for max_dark_skin + < index(Y) #<BR> 2<BR> 3 * (min_ bright _ skin - max_ dark _ skin)<BR> <BR> max_ dark _ skin +<BR> 4<BR> (dark _ pos _ gain _ bright _ pos _ gain)<BR> Local _ pos _ gain = bright _ pos _ gain +<BR> <BR> <BR> <BR> <BR> <BR> <BR> <BR> <BR> 4<BR> 3 * (min_ bright _ skin _ max_ dark _ skin)<BR> <BR> <BR> <BR> <BR> <BR> <BR> <BR> <BR> <BR> for max_ dark _ skin + 4 < index (Y) <_ min_ bright _ skin<BR> <BR> <BR> <BR> <BR> <BR> <BR> <BR> <BR> <BR> <BR> <BR> <BR> <BR> <BR> Local _ pos _ gain = bright _ pos _ gain for index (Y) 2 rnin_ bright _ skin In the same way, dark_neg_gan and bright_neg_gain are combined to compute Local_neg_gain. Then Localdelta_Y is computed using the general formula : LocalDelta _ y = (Local _ pos _ gain * max (0, Delta _ y + max (Delta _ Y, delta _ yo) + Local _ neg _ gain * min (0, Delta _ y + min (Delta _ Y,-delta _ yo)- 4 * Delta _ y) * cor _ fac/128 + Delta _ y The algorithm allows a modulation of the histogram modification effects in skin tone. Especially, when the dynamic contrast algorithm is used, it provides significant improvement in near-to-black skins and near-to-white skins.

The basics of the histogram are very simple. Care is only taken to provide the required continuity from dark to bright domain and from delta-Y <0 to delta-Y >0. The gain parameters were chosen, considering the already existing parameters for UV histogram compensation.

Histogram modification algorithms are optimized taking into account a large number op pictures. Often compromises are made so that the algorithm performs properly in critical material, such as skin tone. The local coupling skin-tone to histogram could thus allow improving the histogram modification algorithm for the whole picture, without degrading the skin tones. The main limitation of the algorithm is actually the precision of the skin tone domain. Sometimes, the most correction would be required just within the limits of the skin tone domain. But, for continuity reasons, to avoid affecting non-skin areas, the correction has to be 0 at the limit of the skin domain. The correction proposed manages to improve most pictures.

Fig. 4 shows a detailed embodiment of the histo-skin correction block 5, and how the skin detector 1 controls this block 5. It is just an implementation of the above formulae indicating how the parameters darkposgain, brightposgain, darkneggain, brightneggain, minbrightskin, maxdarkskin, and index are used to obtain localdeltay from the corrction factor cor-fac and delta.

In an embodiment of the skin tone detection block 1, the correction factor cor-fac is derived from YUV as follows. Two axes are defined : Vrefl =4*U+3*V Vref2 = 2. 5*V-2*U-min (Y, 256)-256 At Y constant, the skin tone is a parallelogram defined by abs (Vrefl) < min (Y, 256) and abs (Vref2) < min (Y, 256). The formulas of course depend on the YUV format, the original format of which is 9 bits. The important thing is that it will always look like a parallelogram in a constant Y plane.

The correction factor at Y constant is a pyramid, more details of which will be set out below.

For other applications than skin tone, the goal is to keep to a simple geometric form in no more than 3 or 4 dimensions. The trick is to define good Verfl and Vref2 axis.

Basically it is desired to find axis where the detection domain looks like a parallelogram so that the correction factor cor-fac is easy to express as a pyramid. If there are more than 4 dimensions, one has to deal with more continuity conditions and in most of the cases it means really trying to isolate a very small portion, very specific portion of the signal conditions.

The detection must remain quiet small compared to the whole domain, but still it must be relevant.

Experiments show that skin tones are concentrated in YUV as shown in Fig. 5.

Skin tones concentrate along an axis defined by 4 * U + 3 * v = Vref 1. Along Vref 1 = 0 we get the highest concentration of typical skin tones, independently from Y.

Vref l > o corresponds to more reddish skins.

Vref I < 0 corresponds to more yellowish skins.

If we look in the LTV domain alone, we find that the skin tone area is getting smaller and smaller when Y decreases. Furthermore the center of the area is moving towards smaller UV values when Y is decreased.

At Y constant, the skin domain can be represented as a parallelogram defined by : |Vref 1| < MaxSkinTon eVariation IVref 21 < MaxSaturat ionVariati on with Vref 2 = 2. 5 * V-2 * U-min (Y, 256)-256 MaxSkinTon e Variation = min (Y, 256) MaxSaturat ionVariati on = min (Y, 256) Figs. 6 and 7 show the skin tone domain in UV and Vrefl, Vref2 for Y > 256.

The detection angles defined by Vrefl, Vref2 and the limits defined by MaxSkinToneVariation, MaxSaturationVariation are a result of a compromise to include as much as possible skin tones in the domain and exclude as much as possible real yellow or red tones. Skin tones at (Vrefl, Vref2) = (0, 0) will be the most corrected in percentage to the histogram correction wanted specifically in skin tones. The further we go from the center of the domain, the lesser correction will be done.

The pyramid of Fig. 8 defines the amount of correction (scaled to 256). It is defined by the following algorithm, in which local_y, local, and localv are the local YUV values : SkinVRefl = 3 * Iocalv + 4 * Iocalu maximum skin correction SkinCorrMax = min (local_y, 256) SkinVRef2 = 5 * local/2-2 * local-256 SkinDistance = min (max (2 * abs (SkinVRefl), 2 * abs (SkinVRef2)), SkinCorrMax) cor-fac = min (32, 64 * (SkinCorrMax-SkinDistance)/max (SkinCorrMax, 8)) It should be noted that the above-mentioned embodiments illustrate rather than limit the invention, and that those skilled in the art will be able to design many alternative embodiments without departing from the scope of the appended claims. In the claims, any reference signs placed between parentheses shall not be construed as limiting the claim. The word"comprising"does not exclude the presence of elements or steps other than those listed in a claim. The word"a"or"an"preceding an element does not exclude the presence of a

plurality of such elements. The invention can be implemented by means of hardware comprising several distinct elements, and by means of a suitably programmed computer. In the device claim enumerating several means, several of these means can be embodied by one and the same item of hardware. The mere fact that certain measures are recited in mutually different dependent claims does not indicate that a combination of these measures cannot be used to advantage.