FR2980324A1 - Method for carrying out modification of color saturation of pixel of image in e.g. LCD, involves determining pixel, determining saturation factor, and modifying level of saturation of color on basis of saturation factor - Google Patents

Method for carrying out modification of color saturation of pixel of image in e.g. LCD, involves determining pixel, determining saturation factor, and modifying level of saturation of color on basis of saturation factor Download PDF

Info

Publication number
FR2980324A1
FR2980324A1 FR1158374A FR1158374A FR2980324A1 FR 2980324 A1 FR2980324 A1 FR 2980324A1 FR 1158374 A FR1158374 A FR 1158374A FR 1158374 A FR1158374 A FR 1158374A FR 2980324 A1 FR2980324 A1 FR 2980324A1
Authority
FR
France
Prior art keywords
saturation
value
pixel
values
color
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
FR1158374A
Other languages
French (fr)
Inventor
Nicolas Roux
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
STMicroelectronics Grenoble 2 SAS
Original Assignee
STMicroelectronics Grenoble 2 SAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by STMicroelectronics Grenoble 2 SAS filed Critical STMicroelectronics Grenoble 2 SAS
Priority to FR1158374A priority Critical patent/FR2980324A1/en
Priority to US13/624,624 priority patent/US9449578B2/en
Priority to US13/624,613 priority patent/US8897559B2/en
Publication of FR2980324A1 publication Critical patent/FR2980324A1/en
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/64Circuits for processing colour signals
    • H04N9/68Circuits for processing colour signals for controlling the amplitude of colour signals, e.g. automatic chroma control circuits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/46Colour picture communication systems
    • H04N1/56Processing of colour picture signals
    • H04N1/60Colour correction or control

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Image Processing (AREA)
  • Facsimile Image Signal Circuits (AREA)

Abstract

The method involves determining a pixel (402) on the basis of value of the pixel, and determining the value based on color saturation value. A value of brightness and a value of color corresponding to the pixel are determined. A saturation factor is determined on the basis of the value of the brightness and the value of the color corresponding to the pixel. A level of saturation of color of the pixel is modified on the basis of the saturation factor. An independent claim is also included for a device for carrying out modification of color saturation of pixel of an image.

Description

B10812 - 10-GR2-1055 1 CIRCUIT DE TRAITEMENT D'IMAGE DOMAINE DE L'INVENTION La présente invention concerne un procédé et un dispositif destinés à modifier la saturation de couleur d'un ou plusieurs pixels d'une image. FIELD OF THE INVENTION The present invention relates to a method and a device for modifying the color saturation of one or more pixels of an image.

ARRIÈRE-PLAN DE L'INVENTION On peut utiliser divers modèles colorimétriques pour représenter les pixels d'une image en couleur. Le modèle colorimétrique RGB (rouge, vert, bleu) utilise trois valeurs R, G et B pour chaque pixel, représentant respectivement une intensité lumineuse rouge, verte et bleue. Une telle représentation correspond de très près à l'affichage d'images sur des afficheurs tels que des tubes cathodiques (CRT) et des afficheurs à cristaux liquides (LCD). Dans des applications de mémorisation et de traitement, le format RGB n'est pas optimal, et on peut utiliser des modèles de couleurs différents, tels que le modèle colorimétrique YUV ou des variantes de celui-ci, selon lesquels une valeur Y représente la luminance du pixel, et deux valeurs UV représentent la chrominance. En outre, le modèle colorimétrique HSV (teinte, saturation, valeur) comprend une valeur de couleur H représentant la teinte, une valeur de saturation S et une valeur V qui représente la luminance. BACKGROUND OF THE INVENTION Various colorimetric models can be used to represent the pixels of a color image. The RGB (red, green, blue) color model uses three R, G, and B values for each pixel, representing red, green, and blue light intensity, respectively. Such a representation corresponds very closely to the display of images on displays such as cathode ray tubes (CRT) and liquid crystal displays (LCD). In storage and processing applications, the RGB format is not optimal, and different color models, such as the YUV color model or variants thereof, can be used, in which a Y value represents the luminance pixel, and two UV values represent chrominance. In addition, the color model HSV (hue, saturation, value) includes a color value H representing the hue, a saturation value S and a value V which represents the luminance.

B10812 - 10-GR2-1055 2 Un utilisateur peut définir une augmentation de saturation de couleur souhaitée à appliquer aux pixels d'une image. Cependant, il est facile de sursaturer une image, ce qui conduit à une dégradation de la qualité de l'image. Un problème est que les outils qui existent actuellement pour modifier la saturation de couleur dans une image n'aident pas de façon adéquate un utilisateur à sélectionner la saturation de couleur appropriée et sûre. RESUME DE MODES DE REALISATION DE L'INVENTION Un objet de modes de réalisation de la présente inven- tion est de résoudre au moins partiellement un ou plusieurs problèmes de l'art antérieur. Selon un premier aspect de la présente invention, on prévoit un procédé pour réaliser une modification de la satu15 ration de couleur d'au moins un pixel d'une image, comprenant les étapes suivantes : déterminer, sur la base de valeurs de pixel d'un premier pixel, au moins une valeur parmi une valeur de saturation de couleur, une valeur de luminance et une valeur de teinte correspondant au premier pixel ; déterminer sur la 20 base de ladite au moins une valeur, un facteur de saturation ; et modifier le niveau de saturation de couleur du premier pixel sur la base du facteur de saturation. Selon un mode de réalisation, l'étape consistant à déterminer ladite au moins une valeur comprend la détermination, 25 sur la base de valeurs du premier pixel, d'au moins deux valeurs parmi une valeur de saturation de couleur, une valeur de luminance et une valeur de teinte correspondant au premier pixel, et l'étape de détermination du facteur de saturation comprend la détermination d'un premier facteur de saturation 30 maximum sur la base d'une première desdites au moins deux valeurs, la détermination d'un deuxième facteur de saturation maximum sur la base d'une deuxième desdites au moins deux valeurs, et la sélection du plus faible des premier et deuxième facteurs de saturation maximum. B10812 - 10-GR2-1055 2 A user can set a desired color saturation increase to apply to pixels in an image. However, it is easy to supersaturate an image, which leads to a degradation of the image quality. One problem is that the tools that currently exist to change the color saturation in an image do not adequately help a user to select the appropriate and safe color saturation. SUMMARY OF EMBODIMENTS OF THE INVENTION An object of embodiments of the present invention is to at least partially solve one or more problems of the prior art. According to a first aspect of the present invention, there is provided a method for effecting a change in the color saturation of at least one pixel of an image, comprising the steps of: determining, based on pixel values of a first pixel, at least one of a color saturation value, a luminance value, and a hue value corresponding to the first pixel; determining on the basis of said at least one value a saturation factor; and changing the color saturation level of the first pixel based on the saturation factor. According to one embodiment, the step of determining said at least one value comprises determining, based on values of the first pixel, at least two values from a color saturation value, a luminance value and a hue value corresponding to the first pixel, and the step of determining the saturation factor comprises determining a first maximum saturation factor based on a first of said at least two values, determining a second maximum saturation factor based on a second of said at least two values, and selecting the lowest of the first and second maximum saturation factors.

B10812 - 10-GR2-1055 3 Selon un autre mode de réalisation, l'étape de détermination de ladite au moins une valeur comprend la détermination, sur la base de valeurs du premier pixel, d'une valeur de saturation de couleur, d'une valeur de luminance et d'une 5 valeur de teinte correspondant au premier pixel, et l'étape de détermination du facteur de saturation comprend la détermination d'un premier facteur de saturation maximum sur la base de la valeur de saturation de couleur, la détermination d'un deuxième facteur de saturation maximum sur la base de la valeur de 10 teinte, et la détermination d'un troisième facteur de saturation maximum sur la base de la valeur de luminance, et la sélection du plus faible des premier, deuxième et troisième facteurs de saturation maximum. Selon un autre mode de réalisation, le facteur de 15 saturation est déterminé par une table de correspondance. Selon un autre mode de réalisation, ladite au moins une valeur parmi une valeur de saturation de couleur, une valeur de luminance et une valeur de teinte est une valeur de saturation de couleur, et si la valeur de saturation de couleur est 20 inférieure à un premier seuil, le facteur de saturation indique une diminution de la saturation de couleur du pixel, et si la valeur de saturation de couleur est supérieure au premier seuil, le facteur de saturation indique une augmentation de la saturation de couleur du pixel. 25 Selon un autre mode de réalisation, le procédé comprend en outre les étapes suivantes : calculer une valeur de luminance sur la base de valeurs RGB du premier pixel ; calculer une première augmentation maximum de la saturation de couleur sur la base de la plus élevée parmi les valeurs RGB et de la valeur de 30 luminance ; et calculer une deuxième augmentation maximum de la saturation de couleur sur la base de la plus faible parmi les valeurs RGB et de la valeur de luminance ; dans lequel la modification du niveau de saturation de couleur du premier pixel comprend la modification du niveau de saturation de couleur sur B10812 - 10-GR2-1055 4 la base de la valeur la plus faible parmi les premières et deuxièmes augmentations maximum et le facteur de saturation. Selon un autre mode de réalisation, les valeurs de pixel du premier pixel sont des valeurs RGB, et la modification de la saturation de couleur comprend l'augmentation de la distance entre la plus élevée et la plus faible des valeurs RGB. Selon un autre mode de réalisation, la modification de la saturation de couleur comprend la réalisation de l'opération suivante : b'=a-(a-b).SFp' c'-a-(a-c).SFp' où a, b et c sont respectivement la valeur la plus haute, la valeur intermédiaire et la valeur la plus basse des valeurs RGB, b' est la nouvelle valeur de la valeur RGB intermédiaire, c' est la nouvelle valeur de la valeur RGB la plus basse, et SFp' est le facteur de saturation. Selon un autre mode de réalisation, le procédé comprend en outre le calcul d'une saturation maximum SFmax en réalisant l'opération suivante : SFmax= a/(a-c), où la satura- tion de couleur du pixel est modifiée en appliquant la valeur la plus faible parmi le facteur de saturation et la saturation maximum. Selon un autre mode de réalisation, le procédé comprend, avant la réalisation de la modification de saturation de cou- leur, la réalisation d'une première modification de saturation de couleur du premier pixel en réalisant le calcul matriciel suivant : WR (1 - WR ).XSFp WG X(1 - SFp) WRx(1 - SFp) WRx(1 - SFp) WG - WGWSFE, WRx(1 - SFp) WRx(1 -SFp) WGx(1 -SFp) WB + - WBWSFp_ dans lequel Rp, Gp, et Bp, sont les valeurs RGB, R'p, G'p, et 30 B'P sont les valeurs RGB après la première modification de saturation de couleur, WR, WG et WB sont des coefficients de pondération constants correspondant aux valeurs R, G et B respec- R' p G' p B' p Rp G Bp B10812 - 10-GR2-1055 tivement, et SFp est un facteur de saturation de la première modification de saturation de couleur. Selon un autre mode de réalisation, le procédé comprend en outre le calcul du facteur de saturation de la première 5 modification de saturation de couleur par les étapes suivantes : calculer une valeur de luminance sur la base de valeurs RGB du premier pixel ; calculer une première augmentation maximum de la saturation de couleur sur la base de la plus élevée parmi les valeurs RGB et de la valeur de luminance ; calculer une deuxième augmentation maximum de la saturation de couleur sur la base de la plus faible parmi les valeurs RGB et de la valeur de luminance ; et déterminer la valeur la plus faible parmi les premières et deuxièmes augmentations maximum et le facteur de saturation. According to another embodiment, the step of determining said at least one value comprises determining, on the basis of values of the first pixel, a color saturation value, of a luminance value and a hue value corresponding to the first pixel, and the step of determining the saturation factor comprises determining a first maximum saturation factor based on the color saturation value; determining a second maximum saturation factor based on the hue value, and determining a third maximum saturation factor based on the luminance value, and selecting the lowest of the first, second, and third maximum saturation factor. In another embodiment, the saturation factor is determined by a lookup table. According to another embodiment, said at least one of a color saturation value, a luminance value and a hue value is a color saturation value, and if the color saturation value is less than one first threshold, the saturation factor indicates a decrease in the color saturation of the pixel, and if the color saturation value is greater than the first threshold, the saturation factor indicates an increase in the color saturation of the pixel. According to another embodiment, the method further comprises the steps of: calculating a luminance value based on RGB values of the first pixel; calculate a first maximum increase in color saturation based on the highest of the RGB values and the luminance value; and calculating a second maximum increase in color saturation based on the lowest of the RGB values and the luminance value; wherein changing the color saturation level of the first pixel includes changing the color saturation level on the base of the lowest value among the first and second maximum increases and the scaling factor. saturation. In another embodiment, the pixel values of the first pixel are RGB values, and the change in color saturation includes increasing the distance between the highest and the lowest of the RGB values. According to another embodiment, the modification of the color saturation comprises carrying out the following operation: b '= a- (ab) .SFp' c'-a- (ac) .SFp 'where a, b and c are respectively the highest value, the intermediate value and the lowest value of the RGB values, b 'is the new value of the intermediate RGB value, it is the new value of the lowest RGB value, and SFp 'is the saturation factor. According to another embodiment, the method further comprises calculating a maximum saturation SFmax by performing the following operation: SFmax = a / (ac), where the color saturation of the pixel is modified by applying the value the lowest of the saturation factor and the maximum saturation. According to another embodiment, the method comprises, before carrying out the color saturation modification, performing a first color saturation modification of the first pixel by performing the following matrix calculation: WR (1 - WR ) .XSFp WG X (1 - SFp) WRx (1 - SFp) WRx (1 - SFp) WG - WGWSFE, WRx (1 - SFp) WRx (1 -SFp) WGx (1 -SFp) WB + - WBWSFp_ in which Rp, Gp, and Bp, are the RGB values, R'p, G'p, and B'P are the RGB values after the first color saturation change, WR, WG and WB are constant constant weighting coefficients R, G, and B values respectively, and SFp is a saturation factor of the first color saturation change. According to another embodiment, the method further comprises calculating the saturation factor of the first color saturation change by the steps of: calculating a luminance value based on RGB values of the first pixel; calculating a first maximum increase in color saturation based on the highest of the RGB values and the luminance value; calculating a second maximum increase in color saturation based on the lowest of the RGB values and the luminance value; and determining the lowest value among the first and second maximum increases and the saturation factor.

Selon un autre aspect de la présente invention, on prévoit un dispositif pour réaliser une modification de la saturation de couleur d'au moins un pixel d'une image, le dispositif comprenant une mémoire agencée pour mémoriser l'image, et un processeur agencé pour : déterminer, sur la base de valeurs de pixel d'un premier pixel, au moins une valeur palmi une valeur de saturation de couleur, une valeur de luminance et une valeur de teinte correspondant au premier pixel ; déterminer, sur la base de ladite au moins une valeur, un facteur de saturation ; et modifier le niveau de saturation de couleur du premier pixel sur la base du facteur de saturation. Selon un mode de réalisation, la détermination de ladite au moins une valeur comprend la détermination, sur la base de valeurs du premier pixel, d'au moins deux valeurs parmi une valeur de saturation de couleur, une valeur de luminance et une valeur de teinte correspondant au premier pixel, et la détermination du facteur de saturation comprend la détermination d'un premier facteur de saturation maximum sur la base d'une première desdites au moins deux valeurs, la détermination d'un deuxième facteur de saturation maximum sur la base d'une deuxième desdites au moins deux valeurs, et la sélection du plus B10812 - 10-GR2-1055 6 faible parmi les premier et deuxième facteurs de saturation maximum. Selon un autre aspect de la présente invention, on prévoit un procédé pour augmenter la saturation de couleur des 5 valeurs RGB d'au moins un pixel d'une image, le procédé comprenant les étapes suivantes : réaliser une première modification de saturation de couleur dudit au moins un pixel en ajustant chacune des valeurs R, G et B sans modifier la luminance du pixel ; réaliser une deuxième modification de saturation de 10 couleur dudit au moins un pixel en maintenant constante la plus élevée des valeurs R, G et B et en modifiant les valeurs des deux autres valeurs R, G et B par rapport à la valeur la plus élevée. BRÈVE DESCRIPTION DES DESSINS 15 Les objets, caractéristiques, aspects et avantages de l'invention précédents, et d'autres, apparaîtront clairement à la lecture de la description détaillée de modes de réalisation, donnée à titre d'illustration et non de limitation, en faisant référence aux dessins joints, dans lesquels : 20 la figure 1 illustre schématiquement un module pour déterminer une augmentation de saturation de couleur à appliquer à un pixel selon un mode de réalisation de la présente invention ; la figure 2 est un graphique illustrant un exemple de 25 canaux RGB avant et après une augmentation de saturation de couleur selon un mode de réalisation de la présente invention ; la figure 3 illustre schématiquement un dispositif pour augmenter la saturation de couleur d'un ou plusieurs pixels d'une image selon un mode de réalisation de la présente 30 invention ; la figure 4 illustre schématiquement un dispositif pour modifier la saturation de couleur d'un ou plusieurs pixels d'une image selon un autre mode de réalisation de la présente invention ; B10812 - 10-GR2-1055 7 les figures 5A à 5C sont des graphiques représentant des exemples de courbes représentant des transformations faites par un bloc de transformation de la figure 4 selon des modes de réalisation de la présente invention ; la figure 6 illustre schématiquement un dispositif pour modifier la saturation de couleur d'un ou plusieurs pixels d'une image selon un autre mode de réalisation de la présente invention ; la figure 7 illustre schématiquement un dispositif 10 pour modifier la saturation de couleur d'un ou plusieurs pixels d'une image selon encore un autre mode de réalisation de la présente invention ; les figures 8A et 8B sont des graphiques représentant des exemples de courbes représentant des transformations faites 15 par les blocs de transformation de la figure 7 selon des modes de réalisation de la présente invention ; la figure 9 est un graphique illustrant un exemple de canaux RGB avant et après une modification de saturation à deux étages selon un mode de réalisation de la présente invention ; 20 et la figure 10 illustre un dispositif de traitement d'image selon un mode de réalisation de la présente invention. CESCRIPTICN DÉIAILIÉE DES mores DE RÉATzuria4 DE IA PRÉSENIE nenzariag Dans la description suivante, le terme YUV sera 25 utilisé de façon générale pour faire référence à des modèles colorimétriques dans lesquels un pixel est représenté sous forme d'une valeur de luminance (Y) et de deux valeurs de chrominance (UV). Cela couvre une plage de formats comprenant par exemple YCrCb et YPbPr. 30 En outre, dans la suite, une modification de satura- tion de couleur est définie sur la base d'un facteur de saturation, qui représente par exemple la modification de saturation sous forme d'un pourcentage de la saturation de couleur d'origine, sous forme d'une augmentation en pourcentage, ou d'un 35 gain, une valeur de 1 indiquant par exemple un gain unitaire. According to another aspect of the present invention, there is provided a device for modifying the color saturation of at least one pixel of an image, the device comprising a memory arranged for storing the image, and a processor arranged for : determining, on the basis of pixel values of a first pixel, at least one value palmi a color saturation value, a luminance value and a hue value corresponding to the first pixel; determining, on the basis of said at least one value, a saturation factor; and changing the color saturation level of the first pixel based on the saturation factor. According to one embodiment, determining said at least one value comprises determining, based on first pixel values, at least two of a color saturation value, a luminance value, and a hue value. corresponding to the first pixel, and determining the saturation factor comprises determining a first maximum saturation factor based on a first of said at least two values, determining a second maximum saturation factor on the basis of a second of said at least two values, and the selection of the weakest of the first and second maximum saturation factors. According to another aspect of the present invention, there is provided a method for increasing the color saturation of the RGB values of at least one pixel of an image, the method comprising the steps of: performing a first color saturation change of said at least one pixel by adjusting each of the values R, G and B without changing the luminance of the pixel; performing a second color saturation change of said at least one pixel by keeping the highest of the R, G, and B values constant and changing the values of the other two R, G, and B values from the highest value. BRIEF DESCRIPTION OF THE DRAWINGS The foregoing and other objects, features, aspects and advantages of the invention will become apparent upon reading the detailed description of embodiments, given by way of illustration and not limitation, in which: with reference to the accompanying drawings, in which: Figure 1 schematically illustrates a module for determining a color saturation increase to be applied to a pixel according to an embodiment of the present invention; Fig. 2 is a graph illustrating an example of RGB channels before and after an increase in color saturation according to an embodiment of the present invention; Figure 3 schematically illustrates a device for increasing the color saturation of one or more pixels of an image according to an embodiment of the present invention; Figure 4 schematically illustrates a device for changing the color saturation of one or more pixels of an image according to another embodiment of the present invention; FIGS. 5A-5C are graphs showing exemplary curves showing transformations made by a transformation block of FIG. 4 according to embodiments of the present invention; Fig. 6 schematically illustrates a device for changing the color saturation of one or more pixels of an image according to another embodiment of the present invention; Fig. 7 schematically illustrates a device 10 for changing the color saturation of one or more pixels of an image according to yet another embodiment of the present invention; Figs. 8A and 8B are graphs showing exemplary curves showing transformations made by the transformation blocks of Fig. 7 according to embodiments of the present invention; Fig. 9 is a graph illustrating an example of RGB channels before and after a two-stage saturation change according to an embodiment of the present invention; And Figure 10 illustrates an image processing device according to an embodiment of the present invention. Disclosed in the following description, the term YUV will be used generally to refer to colorimetric models in which a pixel is represented as a luminance (Y) value and a luminance (Y) value. two chrominance (UV) values. This covers a range of formats including for example YCrCb and YPbPr. Further, in the following, a color saturation change is defined on the basis of a saturation factor, which represents, for example, the saturation change as a percentage of the original color saturation. in the form of a percentage increase, or a gain, a value of 1 indicating for example a unit gain.

B10812 - 10-GR2-1055 8 La figure 1 illustre un module 100 destiné à générer un facteur de saturation à appliquer à un pixel de telle sorte que la teinte du pixel soit préservée. Une sur-saturation d'une image représentée dans l'espace colorimétrique RGB peut provoquer un écrêtage d'une ou plusieurs des valeurs RGB, qui provoque à son tour une dégradation de l'image. En particulier, pour augmenter la saturation de couleur d'un pixel sans augmenter la luminance du pixel, les valeurs RGB sont par exemple converties dans un format YUV, de sorte qu'un gain de saturation de couleur peut être appliqué aux valeurs de chrominance sans affecter la valeur de luminance. Cependant, lorsque les valeurs YUV modifiées sont reconverties en valeurs RGB, les limites de code supérieures ou inférieures d'une ou plusieurs des valeurs RGB peuvent avoir été dépassées. FIG. 1 illustrates a module 100 for generating a saturation factor to be applied to a pixel so that the hue of the pixel is preserved. B10812 - 10-GR2-1055 Over saturation of an image represented in the RGB color space may cause clipping of one or more of the RGB values, which in turn causes image degradation. In particular, to increase the color saturation of a pixel without increasing the luminance of the pixel, the RGB values are for example converted into a YUV format, so that a color saturation gain can be applied to the chrominance values without assign the luminance value. However, when the modified YUV values are converted back to RGB values, the upper or lower code limits of one or more of the RGB values may have been exceeded.

Cela entraîne une dégradation d'image, puisque l'écrêtage d'une ou plusieurs des valeurs RGB provoque une variation de la teinte du pixel, qui en particulier devient apparente lorsqu'un certain nombre de pixels voisins sont écrêtés de la même façon. En référence à la figure 1, un module 100 détermine un facteur de saturation SFp à appliquer à un pixel p d'une image. Le pixel p est représenté sous forme de valeurs RGB Rp, Gp, et Bp au niveau d'une entrée 102. Ces valeurs sont fournies à un bloc de calcul de luminance 104 (Y CALC) et à un bloc de calcul de facteur de saturation maximum 106 (MAX SF CALC). This results in image degradation, since clipping one or more of the RGB values causes a variation in the hue of the pixel, which in particular becomes apparent when a number of neighboring pixels are clipped in the same way. With reference to FIG. 1, a module 100 determines a saturation factor SFp to be applied to a pixel p of an image. The pixel p is represented as RGB values Rp, Gp, and Bp at an input 102. These values are supplied to a luminance calculation block 104 (Y CALC) and to a saturation factor calculation block maximum 106 (MAX SF CALC).

Le bloc 104 détermine la luminance Y du pixel p sur la base des valeurs RGB, par exemple sur la base de constantes WR, WG et WB, qui sont des coefficients de pondération correspondant aux valeurs de couleurs R, G et B respectivement. De tels coefficients sont par exemple définis pour un moniteur d'affichage donné, et peuvent être mémorisés dans une mémoire. En particulier, la luminance est par exemple déterminée sur la base du calcul suivant : Y = WRRp WGGp WBBp Le bloc 106 reçoit la valeur de luminance Y du bloc 35 104, et aussi les valeurs RGB provenant de l'entrée 102, et B10812 - 10-GR2-1055 9 calcule des facteurs de saturation maximum SFmaxii et SFmaxi, sur la base de ces valeurs. Le facteur de saturation SFmaxii est déterminé sur la base de la plus élevée des trois valeurs RGB, et de la valeur de luminance. Le facteur de saturation SFmaxi, est déterminé sur la base de la plus faible des valeurs RGB, et de la valeur de luminance Y. Les valeurs SFmaxli et SFmaxi, sont fournies à un bloc 108 (MIN), qui sélectionne la valeur la plus faible parmi ces valeurs pour fournir un facteur de saturation SFp pour le pixel courant p. Optionnellement, le bloc 108 reçoit aussi d'une entrée 112 une valeur SFUSER de saturation de couleur définie par un utilisateur, qui correspond à une augmentation de saturation qu'un utilisateur souhaite appliquer sur la totalité d'une image comprenant le pixel p. Dans ce cas, le bloc 108 sélec- tionne la valeur la plus faible des trois valeurs SFmaxH et SFmaxL et SFUSER , pour fournir le facteur de saturation pour le pixel courant SFp. Le facteur de saturation maximum S FmaxH est par exemple déterminé ainsi : SFmaxH=(Cmax -Y )/(max(Rp,Gp,Bp) -Y) où Cmax est la limite supérieure du code représentant chacune des valeurs RGB, Y est la valeur de luminance, et Rp, Gp et Bp sont les valeurs RGB. Le facteur de saturation maximum SFmaxi, est par 25 exemple déterminé ainsi : SFmaxL= (Y-Cmin)/(Y-min(Rp,Gp,Bp)) -(2) où Cmin est la limite inférieure du code représentant chacune des valeurs RGB. Dans le cas où Cmin est nul, cela devient simplement : 30 SFmaxL=V(Y-min (Rp,Gp,Bp)) La limite de code supérieure Cmax dépend par exemple du nombre de bits utilisés pour représenter chaque valeur RGB. En supposant que chaque valeur est représentée par n bits, la limite de code supérieure est par exemple 2n-1, la limite de 35 code inférieure est nulle. Si n est égal à 8, Cmax est alors B10812 - 10-GR2-1055 10 égal à 255, et Cmin est égal à 0. En variante, en fonction de la façon dont les valeurs RGB sont définies, les limites supérieure et inférieure du code pourraient être différentes. Les facteurs de saturation SFmaxH et SFmaxi, représen5 tent la valeur maximum avec laquelle la saturation de couleur du pixel, telle que définie par le modèle colorimétrique YUV, peut être augmentée avant qu'un écrêtage des valeurs RGB survienne. Dans le cas où le facteur de saturation défini par l'utilisateur SFUSER est sous forme d'une augmentation en pourcentage, les 10 facteurs de saturation SFmaxH et SFmaxi, peuvent aussi être représentés sous forme d'un pourcentage, en multipliant chacun d'eux par 100. Avantageusement, en calculant le facteur de saturation sur la base du plus faible entre SFmaxH et SFmaxL, on peut 15 éviter une sursaturation dans l'espace colorimétrique RGB, comme on va maintenant le décrire en relation avec la figure 2. La figure 2 est un graphique illustrant un exemple de valeurs RGB qui sont reçues sur des canaux A, B et C, et une valeur de luminance, avant et après l'application d'une 20 augmentation de saturation. Le canal A (Channel A) représente la plus élevée des trois valeurs RGB, le canal C (Channel C) représente la plus faible des trois valeurs RGB, et le canal B (Channel B) représente la valeur RGB intermédiaire. Le présent inventeur a trouvé que, lorsqu'elle est 25 représentée dans l'espace colorimétrique RGB, une augmentation de saturation YUV correspond à une augmentation d'un même facteur des distances entre chacune des valeurs RGB et la valeur de luminance. En outre, l'écrêtage de l'une des valeurs RGB va avoir lieu en premier dans le canal le plus élevé ou le canal le 30 plus faible. La figure 2 illustre, au niveau d'une ligne en trait interrompu 202, un exemple de valeurs RGB initiales des canaux A, B et C, et une valeur de luminance correspondante, qui a une valeur comprise entre celle des canaux A et B. Lorsque la 35 saturation de couleur est augmentée, les valeurs des canaux A et B10812 - 10-GR2-1055 11 C s'éloignent de la valeur de luminance, en direction des limites de code supérieure et inférieure, notées Cmax et 0 en figure 2. La valeur du canal A atteint la limite de code supérieure Cmax, au niveau d'une ligne en trait interrompu 204, avant que la valeur du canal C atteigne la limite de code inférieure. Ce point représente l'augmentation de saturation optimale, juste avant qu'un écrêtage des valeurs RGB ait lieu. Le facteur de saturation SFmaxH décrit précédemment en référence à la figure 1 correspond au gain qui est appliqué à la valeur du canal A de telle sorte qu'elle atteigne juste la limite de code supérieure Cmax- En effet, en faisant référence à la formule (1) précédente, la distance notée 206 en figure 2 entre Cmax et la valeur de luminance est égale Cmax-Y, et la distance notée 208 entre le canal A et la valeur de luminance est égale à max(Rp,Gp,Bp)-Y. Le rapport entre ces deux distances détermine le facteur de saturation à appliquer pour amener le canal A à la limite de code supérieure Cmax- Si on appelle une telle saturation 100 pourcent, la saturation initiale peut être définie comme étant un pourcentage 20 de cette saturation maximum permise, et dans l'exemple de la figure 2, la saturation est ainsi initialement à 50 pourcent. Le facteur de saturation SFmaxi, calculé pour l'exemple de la figure 2 est supérieur à SFinaxH- Cependant, dans des exemples de variantes, la valeur du canal C pourrait atteindre 25 la limite de code inférieure avant que la valeur du canal A n'atteigne la limite de code supérieure, et dans ce cas ce serait la valeur de SFmaxi, qui serait la valeur déterminante. La figure 3 illustre un système 300 destiné à augmenter le niveau de saturation de couleur du pixel RGB p de la 30 figure 1, reçu au niveau de l'entrée 102. Comme cela est illustré, les valeurs RGB sont fournies à un bloc de calcul matriciel 302 (vIATRIX CALC), qui reçoit aussi le facteur de saturation SF généré par le module 100 (MAX SF CALC) de la figure 1, et aussi les coefficients de pondération WR, WG et WB. 35 Le bloc 302 applique une opération matricielle sur les valeurs B10812 - 10-GR2-1055 12 RGB sur la base d'un facteur de saturation et des coefficients de pondération, afin de fournir des valeurs RGB modifiées R'p, G' et B' sur une sortie 304 pour le pixel p. Par exemple, le calcul matriciel qui est appliqué par le bloc 302 est le suivant : R'p WR + (1 - WR )xSFp WG X(1 - SFp ) WBx(1- SFp ) RP G' = WRx(1 - SFp ) WG + (1 - WG )xSFp WBx(1 - SFp ) G B' WRx(1 - SFp ) WG X(1 - SFp ) WB + (1 - WB )xSFp BP _ Un tel calcul matriciel correspond à une transformation des valeurs d'entrée RGB RP' GP et B en valeurs de luminance et de chrominance, à l'application du facteur de saturation SFp aux valeurs de chrominance, et à la transformation des valeurs de chrominance modifiées et de luminance pour revenir dans le modèle colorimétrique RGB sous la forme de valeurs Rp', Gp' et Bp Par exemple, si une augmentation de saturation de couleur doit être appliquée à une image complète comprenant des pixels 0 à P, chaque pixel p est fourni au module 100 et au bloc de calcul matriciel 302 de la figure 3 en parallèle, de sorte que, pour chaque pixel p, un facteur de saturation correspondant SF peut être généré et appliqué au pixel par le bloc de calcul matriciel 302. Dans le cas où un utilisateur définit aussi une augmentation de saturation de couleur pour l'image, chaque pixel va être modifié sur la base de la valeur SFmaxH, SFmaxi, ou SFUSER, selon celle qui est la plus faible. A titre de variante, on peut ne spécifier aucune augmentation de saturation d'utilisateur, mais à la place l'utilisateur peut demander qu'une augmentation de saturation de couleur optimale soit appliquée à chaque pixel. Dans ce cas, la plus faible des valeurs maximum d'augmentation de saturation SFmaxH et SFmaxi, est par exemple appliquée à chaque pixel. La figure 4 illustre un dispositif 400 destiné à modifier la saturation de couleur d'un ou plusieurs pixels selon un autre mode de réalisation. The block 104 determines the luminance Y of the pixel p on the basis of the RGB values, for example on the basis of constants WR, WG and WB, which are weighting coefficients corresponding to the color values R, G and B respectively. Such coefficients are for example defined for a given display monitor, and can be stored in a memory. In particular, the luminance is, for example, determined on the basis of the following calculation: Y = WRRp WGGp WBBp The block 106 receives the luminance value Y from the block 104, and also the RGB values from the input 102, and B10812 - 10-GR2-1055 9 calculates maximum saturation factors SFmaxii and SFmaxi, based on these values. The saturation factor SFmaxii is determined based on the highest of the three RGB values, and the luminance value. The saturation factor SFmaxi is determined on the basis of the lowest of the RGB values and the luminance value Y. The values SFmaxli and SFmaxi are supplied to a block 108 (MIN), which selects the lowest value among these values to provide a saturation factor SFp for the current pixel p. Optionally, the block 108 also receives from an input 112 a user-defined color saturation value SFUSER, which corresponds to a saturation increase that a user wishes to apply to the entire image comprising the pixel p. In this case, the block 108 selects the lowest value of the three values SFmaxH and SFmaxL and SFUSER, to provide the saturation factor for the current pixel SFp. The maximum saturation factor S FmaxH is for example determined as follows: SFmaxH = (Cmax -Y) / (max (Rp, Gp, Bp) -Y) where Cmax is the upper limit of the code representing each of the RGB values, Y is the luminance value, and Rp, Gp and Bp are the RGB values. The maximum saturation factor SF max, for example, is determined as follows: SF max = (Y-C min) / (Y min (R p, G p, B p)) - (2) where C min is the lower limit of the code representing each of the values RGB. In the case where Cmin is zero, this simply becomes: SFmaxL = V (Y-min (Rp, Gp, Bp)) The upper code limit Cmax depends, for example, on the number of bits used to represent each RGB value. Assuming that each value is represented by n bits, the upper code limit is, for example, 2n-1, the lower code limit is zero. If n is equal to 8, then Cmax is B10812 - 10-GR2-1055 equal to 255, and Cmin is equal to 0. Alternatively, depending on how the RGB values are defined, the upper and lower limits of code could be different. The saturation factors SFmaxH and SFmaxi represent the maximum value at which the color saturation of the pixel, as defined by the YUV color model, can be increased before clipping of the RGB values occurs. In the case where the user defined saturation factor SFUSER is in the form of a percentage increase, the saturation factors SFmaxH and SFmaxi can also be represented as a percentage by multiplying each of them. Advantageously, by calculating the saturation factor on the basis of the weakest between SFmaxH and SFmaxL, supersaturation in the RGB color space can be avoided, as will now be described with reference to FIG. 2 is a graph illustrating an example of RGB values that are received on channels A, B and C, and a luminance value, before and after the application of a saturation increase. Channel A represents the highest of the three RGB values, Channel C represents the lowest of the three RGB values, and Channel B represents the intermediate RGB. The present inventor has found that, when represented in the RGB color space, a saturation increase YUV corresponds to an increase of the same factor in the distances between each of the RGB values and the luminance value. In addition, the clipping of one of the RGB values will take place first in the highest channel or the lowest channel. FIG. 2 illustrates, at a broken line 202, an example of initial RGB values of channels A, B and C, and a corresponding luminance value, which has a value between that of channels A and B. When the color saturation is increased, the values of the channels A and B10812 - 10-GR2-1055 11 C move away from the luminance value, towards the upper and lower code limits, denoted Cmax and 0 in FIG. The value of channel A reaches the upper code limit Cmax, at a broken line 204, before the value of channel C reaches the lower code limit. This point represents the optimal saturation increase, just before a clipping of the RGB values takes place. The saturation factor SFmaxH described above with reference to FIG. 1 corresponds to the gain that is applied to the value of the channel A so that it just reaches the upper code limit Cmax. Indeed, with reference to the formula (FIG. 1), the distance noted 206 in FIG. 2 between Cmax and the luminance value is equal to Cmax-Y, and the distance noted 208 between the channel A and the luminance value is equal to max (Rp, Gp, Bp) - Y. The ratio between these two distances determines the saturation factor to be applied to bring the channel A to the upper code limit Cmax. If such a 100 percent saturation is called, the initial saturation can be defined as a percentage of this maximum saturation. permitted, and in the example of Figure 2, the saturation is thus initially at 50 percent. The saturation factor SFmax, calculated for the example of FIG. 2, is greater than SF 17xH. However, in variant examples, the value of channel C could reach the lower code limit before the value of channel A reaches the upper code limit, and in this case it would be the value of SFmaxi, which would be the decisive value. FIG. 3 illustrates a system 300 for increasing the color saturation level of the RGB pixel p of FIG. 1, received at the input 102. As illustrated, the RGB values are provided to a calculation block matrix 302 (vIATRIX CALC), which also receives the saturation factor SF generated by the module 100 (MAX SF CALC) of FIG. 1, and also the weighting coefficients WR, WG and WB. Block 302 applies a matrix operation to the RGB values based on a saturation factor and weighting coefficients to provide modified RGB values R'p, G 'and B. on an output 304 for the pixel p. For example, the matrix calculation that is applied by block 302 is as follows: R'p WR + (1 -WR) xSFp WG X (1-SFp) WBx (1- SFp) RP G '= WRx (1-SFp ) WG + (1 - WG) xSFp WBx (1 - SFp) GB 'WRx (1 - SFp) WG X (1 - SFp) WB + (1 - WB) xSFp BP _ Such a matrix calculation corresponds to a transformation of the values RGB RP 'GP and B input in luminance and chrominance values, the application of the saturation factor SFp to the chrominance values, and the transformation of the modified chrominance and luminance values to return to the RGB colorimetric model in the form of Rp ', Gp' and Bp values. For example, if a color saturation increase is to be applied to a complete image comprising pixels 0 to P, each pixel p is supplied to the module 100 and the matrix calculation block 302 of Figure 3 in parallel, so that for each pixel p, a corresponding saturation factor SF can be generated and applied to the pixel by the block of Matrix calculation 302. In the case where a user also defines a color saturation increase for the image, each pixel will be modified on the basis of SFmaxH, SFmaxi, or SFUSER, whichever is lower. Alternatively, no user saturation increase may be specified, but instead the user may request that an optimal color saturation increase be applied to each pixel. In this case, the lowest of the saturation increase maximum values SFmaxH and SFmaxi, for example, is applied to each pixel. Figure 4 illustrates a device 400 for changing the color saturation of one or more pixels according to another embodiment.

B10812 - 10-GR2-1055 13 Une valeur entrante de pixel de couleur 402 (PIXIN) peut être d'un format quelconque, y compris mais sans être limité à cela, les formats RGB, HSV (teinte, saturation, valeur), YUV, etc. La valeur de pixel est fournie à un bloc de 5 calcul 404 (CALC SAT/HUE/LUM), qui détermine l'une des valeurs parmi la saturation, la teinte et la luminance du pixel. Dans le cas où le pixel est dans le format HSV, cette information peut être extraite directement. A titre de variante, dans le cas où le signal est dans 10 l'espace colorimétrique RGB, la luminance peut être calculée comme cela a été décrit précédemment. La saturation de couleur dans l'espace colorimétrique YUV peut être déterminée en déterminant le facteur de saturation expliqué précédemuent en référence à la figure 1, puis en prenant l'inverse de ce 15 facteur. La teinte, sur une échelle de 0 à 360, peut être calculée par les équations suivantes sur la base des valeurs RGB : IF max(R,G,B) = R : Teinte = 60*(G-B)/(R-min(R,G,B)) IF max(R,G,B) = G : Teinte = 120+60*(B-R)/(G-min(R,G,B)) 20 IF max(R,G,B) = B : Teinte = 240+60*(R-G)/(B-min(R,G,B)) où sur l'échelle de 0 à 360, les valeurs 0 et 360 correspondent au rouge, la valeur 120 correspond au vert, et la valeur 240 correspond au bleu, et les valeurs intermédiaires correspondent à des formes de couleurs intermédiaires. La saturation de 25 l'espace colorimétrique HSV peut être déterminée de la façon suivante : SATHSV = (max-min)/max où max est égal à max (R,G,B) et min est égal à min(R,G,B). En outre, dans le cas où le pixel est dans l'espace 30 colorimétrique YUV, la saturation de couleur et la teinte peu- vent être extraites en convertissant d'abord les signaux dans l'espace colorimétrique RGB, puis de la façon décrite précédemment. Le bloc 404 fournit une valeur W de saturation de 35 couleur, de teinte ou de luminance à un bloc de transformation B10812 - 10-GR2-1055 14 406, qui transforme cette valeur W en un facteur de saturation SFp' à appliquer au pixel. Par exemple, le bloc 406 comprend une table de correspondance, qui fournit un certain facteur de saturation pour chaque valeur ou plage de valeurs de la valeur W. B10812 - 10-GR2-1055 13 An incoming color pixel 402 value (PIXIN) may be of any format, including but not limited to, RGB, HSV (hue, saturation, value), YUV etc. The pixel value is supplied to a calculation block 404 (CALC SAT / HUE / LUM), which determines one of the values among saturation, hue and luminance of the pixel. In case the pixel is in the HSV format, this information can be extracted directly. Alternatively, in the case where the signal is in the RGB color space, the luminance can be calculated as previously described. The color saturation in the YUV color space can be determined by determining the saturation factor explained above with reference to Fig. 1 and then taking the inverse of this factor. The hue, on a scale from 0 to 360, can be calculated by the following equations on the basis of RGB values: IF max (R, G, B) = R: Hue = 60 * (GB) / (R-min ( R, G, B)) IF max (R, G, B) = G: Hue = 120 + 60 * (BR) / (G-min (R, G, B)) max IF (R, G, B) ) = B: Tint = 240 + 60 * (RG) / (B-min (R, G, B)) where on the scale from 0 to 360, the values 0 and 360 correspond to red, the value 120 corresponds to green, and the value 240 is blue, and the intermediate values correspond to intermediate color shapes. The saturation of the HSV color space can be determined as follows: SATHSV = (max-min) / max where max is equal to max (R, G, B) and min is equal to min (R, G, B). Further, in the case where the pixel is in YUV color space, the color saturation and hue can be extracted by first converting the signals into the RGB color space and then as previously described. . Block 404 provides a color saturation, hue, or luminance value of W to a transform block 406, which transforms this W value into a saturation factor SFp 'to be applied to the pixel. For example, block 406 includes a lookup table, which provides a certain saturation factor for each value or range of values of the W value.

Cela est illustré par une courbe en figure 4, qui représente la relation entre la valeur W et le facteur de saturation. Une telle transformation est par exemple mise en oeuvre par une table de correspondance, ou par l'application d'une certaine formule décrivant la transformation. Dans certains cas, comme le cas où W est une valeur de saturation, le facteur de saturation correspondant au pic de la courbe est réglé par une augmentation de saturation définie par l'utilisateur SFUSER fournie par un bloc 408. Par exemple, des facteurs de saturation pour chaque valeur W sont définis sous forme d'une fraction ou d'un pour- centage du facteur de saturation défini par l'utilisateur, le pic de la courbe correspondant à 100 pourcent du facteur de saturation défini par l'utilisateur. A titre de variante, l'amplitude de la courbe pourrait être définie par l'utilisateur. This is illustrated by a curve in Figure 4, which represents the relationship between the W value and the saturation factor. Such a transformation is for example implemented by a correspondence table, or by the application of a certain formula describing the transformation. In some cases, such as the case where W is a saturation value, the saturation factor corresponding to the peak of the curve is regulated by a user-defined saturation increase SFUSER provided by a block 408. For example, saturation for each W value are defined as a fraction or percentage of the saturation factor defined by the user, the peak of the curve corresponding to 100 percent of the saturation factor defined by the user. Alternatively, the amplitude of the curve could be defined by the user.

Le facteur de saturation SFp' provenant du bloc 406 est fourni à un bloc de modification de saturation de couleur 410 (SAT MOD), qui reçoit aussi la valeur de pixel 402, et modifie sa saturation de couleur sur la base du facteur de saturation SFp'. Il fournit un pixel de sortie 412 (PIXOUT)- Les figures 5A, 5B et 5C sont des graphiques illustrant des exemples des relations entre la valeur V et le facteur de saturation SFp', dans le cas où la valeur est la saturation de couleur, la teinte et la luminance respectivement. La figure 5A illustre le facteur de saturation SFp' pour des valeurs de saturation comprises entre 0 et 4095, en supposant une valeur de saturation de 12 bits, bien qu'on puisse utiliser une autre échelle, qui est par exemple définie par l'utilisateur. Pour des saturations de couleur comprises entre 0 et 1000, le facteur de saturation est approximativement propor- tionnel à la saturation de couleur, par exemple augmentant B10812 - 10-GR2-1055 15 progressivement de 25 à 140 pourcent. Pour des valeurs de saturation de couleur comprises entre 1000 et 2000, le facteur de saturation est stable, par exemple à environ 140 pourcent. Entre les niveaux de saturation de couleur 2000 et 4000, le facteur de saturation est inversement proportionnel à la saturation de couleur, par exemple diminuant progressivement de 140 pourcent à 100 pourcent. De façon plus générale, la relation entre la saturation du pixel et le facteur de saturation est par exemple telle que, pour des saturations de couleur relativement basses, des facteurs de saturation relativement bas sont obtenus, pour des valeurs de saturation de couleur intermédiaires, un facteur de saturation relativement élevé est obtenu, et pour des saturations de couleur relativement élevées, des facteurs de satu- ration relativement bas sont obtenus. La figure 5B illustre le facteur de saturation SFp' pour des valeurs de teinte progressant du rouge vers le vert et vers le bleu et revenant de nouveau vers le rouge, par exemple sur une échelle de 0 à 360 comme cela a été décrit précédemment. The saturation factor SFp 'from block 406 is supplied to a color saturation change block 410 (SAT MOD), which also receives the pixel value 402, and changes its color saturation based on the saturation factor SFp . It provides an output pixel 412 (PIXOUT) - FIGS. 5A, 5B and 5C are graphs illustrating examples of the relationships between the value V and the saturation factor SFp ', in the case where the value is the color saturation, hue and luminance respectively. FIG. 5A illustrates the saturation factor SFp 'for saturation values between 0 and 4095, assuming a saturation value of 12 bits, although another scale can be used, which is for example defined by the user. . For color saturations between 0 and 1000, the saturation factor is approximately proportional to the color saturation, for example increasing gradually from 25 to 140 percent. For color saturation values between 1000 and 2000, the saturation factor is stable, for example at about 140 percent. Between the 2000 and 4000 color saturation levels, the saturation factor is inversely proportional to the color saturation, for example gradually decreasing from 140 percent to 100 percent. More generally, the relationship between the saturation of the pixel and the saturation factor is, for example, such that, for relatively low color saturation, relatively low saturation factors are obtained for intermediate color saturation values. relatively high saturation factor is obtained, and for relatively high color saturation relatively low saturation factors are obtained. FIG. 5B illustrates the saturation factor SFp 'for hue values progressing from red to green and to blue and returning to red, for example on a scale of 0 to 360 as previously described.

A titre de variante, la teinte pourrait être remappée vers une puissance de 2, comme par exemple une échelle de 0 à 255, en d'autres termes sur 8 bits. Dans cet exemple, les teintes proches du rouge entraînent un facteur de saturation relativement bas, par exemple autour de 120 pourcent. En effet, de telles teintes correspondent souvent à des visages, qui préférablement ne sont pas fortement saturés. Des teintes proches du vert entraînent un facteur de saturation intermédiaire, par exemple autour de 150 pourcent, tandis que des teintes proches du bleu entraînent par exemple un facteur de saturation relativement élevé, par exemple autour de 180 pourcent. En effet, des verts et des bleus dans des images correspondent souvent à de la végétation et au ciel, qui bénéficient en général d'une saturation de couleur relativement élevée. La figure 5C illustre le facteur de saturation SFp' 35 pour des valeurs de luminance comprise entre 0 et 4095, en B10812 - 10-GR2-1055 16 supposant des valeurs de luminance de 12 bits, bien qu'on puisse utiliser d'autres échelles. Pour des valeurs de luminance comprises entre 0 et 500, le facteur de saturation est environ proportionnel à la saturation de couleur, augmentant par exemple progressivement de 30 à 100 pourcent. Pour des valeurs de saturation comprises entre 500 et 2000, le facteur de saturation est stable, par exemple à environ 100 pourcent. Entre les niveaux de saturation de couleur de 2000 et de 3500, le facteur de saturation est inversement proportionnel à la saturation de couleur, diminuant par exemple progressivement de 100 à 35 pourcent, et entre 3500 et 4000, il est stable, par exemple à 35 pourcent. Ainsi, pour de très faibles valeurs de luminance et pour des valeurs de luminance relativement élevées, le facteur de saturation est bas, tandis que pour des valeurs de luminance intermédiaires, des facteurs de saturation plus élevés sont obtenus. La figure 6 illustre un dispositif 600 destiné à modifier la saturation de couleur d'un ou plusieurs pixels selon un autre mode de réalisation. Les caractéristiques communes avec le dispositif 400 de la figure 4 ont été notées avec les mêmes références, et ne vont pas être décrites de nouveau en détail. Plutôt qu'un seul bloc de calcul et un seul bloc de transformation, le circuit de la figure 6 comprend trois blocs 25 de calcul 602 (CALC SAT), 604 (CALC HUE) et 606 (CALO LUM) pour déterminer la saturation de couleur, la teinte et la luminance du pixel respectivement, et trois blocs de transformation 608 (LUTsAT), 610 (LUTHUE) et 612 (LUTLum) mis en oeuvre sous forme de tables de correspondance pour transformer les valeurs de 30 saturation de couleur, de teinte et de luminance respectivement en facteurs de saturation SF- pSATP SFpHUE et SFpLum. Chaque bloc 608, 610, 612 est par exemple mis en oeuvre sous forme d'une table de correspondance réalisant la transformation représentée par les graphiques des figures 5A, 5B et 5C décrits précé35 demment. Les trois facteurs de saturation SFp SAT, SFpHUE et B10812 - 10-GR2-1055 17 SFpLum sont fournis à un bloc 614 (MIN), qui détermine la valeur la plus faible de ces valeurs pour fournir le facteur de saturation SFp' à appliquer au pixel, en utilisant le bloc 410. Optionnellement, un niveau de saturation défini par 5 l'utilisateur SFUSER est fourni au bloc de transformation 608, pour déterminer le pic de saturation de couleur de la façon décrite précédemment. En plus ou à la place, le niveau de saturation de couleur défini par l'utilisateur peut être fourni en tant qu'autre entrée du bloc 614, pour qu'il soit sélectionné 10 s'il est inférieur à tous les autres facteurs de saturation. En outre, optionnellement, le module 100 décrit précédemment en référence à la figure 1 est aussi présent, et reçoit le pixel d'entrée 402. Dans ce cas, le pixel d'entrée comprend des valeurs RGB, et le bloc 100 génère un autre facteur de 15 saturation SFp' qui évite une variation de teinte de la valeur RGB, comme décrit précédemment. Ce facteur de saturation est par exemple fourni en tant qu'entrée additionnelle au bloc 614, pour qu'il soit sélectionné en tant que facteur de saturation SFp' s'il est inférieur aux autres entrées. 20 Dans le cas où le pixel d'entrée 402 est dans le format RGB, les blocs 602, 604 et 606 pourraient être mis en oeuvre par un unique bloc qui réalise une conversion de RGB en HSV. Dans des variantes de réalisation, un ou deux des 25 blocs de calcul 602, 604, 606, et l'un ou les deux blocs de transformation correspondants 608, 610, 612, pourraient être supprimés. La figure 7 illustre un dispositif 700 destiné à modifier la saturation de couleur d'un pixel selon un autre mode 30 de réalisation. Un pixel d'entrée 702 est au format RGB, comprenant trois canaux RP' GP et B d'un pixel p. Le pixel d'entrée est fourni à un bloc de conversion 704 (RGB TO HSV), qui convertit les valeurs RGB dans le format HSV. Alternatively, the hue could be remapped to a power of 2, such as a scale of 0 to 255, in other words, 8 bits. In this example, shades close to red result in a relatively low saturation factor, for example around 120 percent. Indeed, such hues often correspond to faces, which preferably are not highly saturated. Tints close to green cause an intermediate saturation factor, for example around 150 percent, while shades close to blue cause for example a relatively high saturation factor, for example around 180 percent. In fact, greens and blues in images often correspond to vegetation and to the sky, which generally have a relatively high color saturation. Figure 5C illustrates saturation factor SFp 'for luminance values between 0 and 4095, assuming 12 bit luminance values, although other scales may be used. . For luminance values between 0 and 500, the saturation factor is approximately proportional to the color saturation, increasing for example progressively from 30 to 100 percent. For saturation values between 500 and 2000, the saturation factor is stable, for example at about 100 percent. Between the color saturation levels of 2000 and 3500, the saturation factor is inversely proportional to the color saturation, progressively decreasing for example from 100 to 35 percent, and between 3500 and 4000 it is stable, for example at 35.degree. percent. Thus, for very low luminance values and for relatively high luminance values, the saturation factor is low, while for intermediate luminance values, higher saturation factors are obtained. Figure 6 illustrates a device 600 for changing the color saturation of one or more pixels according to another embodiment. The features common with the device 400 of Figure 4 have been noted with the same references, and will not be described again in detail. Rather than a single calculation block and a single transformation block, the circuit of FIG. 6 comprises three calculation blocks 602 (CALC SAT), 604 (CALC HUE) and 606 (CALO LUM) for determining the color saturation. , the hue and the luminance of the pixel respectively, and three transformation blocks 608 (LUTsAT), 610 (LUTHUE) and 612 (LUTLum) implemented in the form of correspondence tables for transforming the color saturation, hue and hue values. and luminance respectively in saturation factors SF-pSATP SFpHUE and SFpLum. Each block 608, 610, 612 is for example implemented in the form of a correspondence table carrying out the transformation represented by the graphs of FIGS. 5A, 5B and 5C described previously. The three saturation factors SFp SAT, SFpHUE, and SFpLum are supplied to a block 614 (MIN), which determines the lowest value of these values to provide the saturation factor SFp 'to be applied to the In a preferred embodiment, a user-defined saturation level SFUSER is provided to the transform block 608 to determine the color saturation peak as previously described. In addition to or instead, the user-defined color saturation level can be provided as another input of block 614, so that it is selected if it is lower than all other saturation factors. . In addition, optionally, the module 100 previously described with reference to FIG. 1 is also present, and receives the input pixel 402. In this case, the input pixel comprises RGB values, and the block 100 generates another saturation factor SFp 'which avoids a hue variation of the RGB value, as previously described. This saturation factor is for example provided as an additional input to block 614, so that it is selected as saturation factor SFp 'if it is lower than the other inputs. In the case where the input pixel 402 is in the RGB format, the blocks 602, 604 and 606 could be implemented by a single block that converts from RGB to HSV. In alternative embodiments, one or both of the calculation blocks 602, 604, 606, and one or both of the corresponding transformation blocks 608, 610, 612 could be omitted. Figure 7 illustrates a device 700 for changing the color saturation of a pixel according to another embodiment. An input pixel 702 is in RGB format, comprising three RP 'GP and B channels of one pixel p. The input pixel is supplied to a conversion block 704 (RGB TO HSV), which converts the RGB values into the HSV format.

B10812 - 10-GR2-1055 18 Dans l'exemple de la figure 7, il y a deux blocs de transformation 706 (LUTHUE), 708 (LUTSAT), qui reçoivent les valeurs de teinte et de saturation de couleur respectivement en provenance du bloc 704, et fournissent des facteurs de satu5 ration SFp HUE et SFpSAT- A titre de variante, il pourrait y avoir un ou trois des blocs de transfolmation 608, 610, 612 de la figure 6. Les blocs sont par exemple mis en oeuvre par des tables de correspondance, qui appliquent par exemple les transformations représentées par les courbes correspondantes des 10 figures 5A, 5B et 5C. A titre de variante, les transformations sont celles qui sont représentées par les figures 8A et 8B, comme on va le décrire maintenant. La figure 8A illustre le facteur de saturation SFpSAT pour des valeurs de saturation comprises entre 0 et 255, en 15 supposant une valeur de saturation de 8 bits, bien qu'on puisse utiliser une autre échelle, qui est par exemple définie par l'utilisateur. Pour des saturations de couleur comprises entre 0 et 50, aucune augmentation de saturation n'est appliquée. Ensuite, entre les saturations de couleur de 50 et 75, le 20 facteur de saturation SFpSAT augmente progressivement de 100 à 160 pourcent. Pour des valeurs de saturation de couleur comprises entre 75 et 150, le facteur de saturation SF- pSAT est relativement stable à 160 pourcent, avant de redescendre progressivement vers 100 pourcent entre les saturations de cou- 25 leur de 150 et 200. Entre les niveaux de saturation de couleur de 200 et 255, le facteur de saturation SFpSAT est égal à 100 pourcent, ce qui implique l'absence d'augmentation de saturation. La figure 8B illustre le facteur de saturation SFp HUE 30 pour des valeurs de teinte progressant du rouge vers le vert et vers le bleu puis revenant vers le rouge, par exemple sur une échelle de 0 à 360, ou sur une échelle basée sur une puissance de 2, comme une échelle de 0 à 255, en d'autres termes une échelle de 8 bits. Dans cet exemple, des teintes allant du rouge 35 au vert, par exemple comprises entre 0 et environ 100 sur une B10812 - 10-GR2-1055 19 échelle de 0 à 255, entraînent un facteur de saturation relativement bas, par exemple à 100 pourcent. Ensuite, le facteur de saturation SFp HUE monte progressivement et atteint environ 145 pourcent pour une teinte d'environ 120, qui est maintenue jusqu'à une teinte d'environ 140. Pour des teintes d'environ 140 à 175, le facteur de saturation SF- pHUE augmente jusqu'à environ 170 %, avant de redescendre progressivement à 100 pourcent pour une teinte d'environ 200, correspondant au début du rouge de nouveau. In the example of FIG. 7, there are two transformation blocks 706 (LUTHUE), 708 (LUTSAT), which receive the hue and color saturation values respectively from the block. 704, and provide SFp HUE and SFpSAT saturation factors. Alternatively, there could be one or three of the transfer blocks 608, 610, 612 of Figure 6. The blocks are, for example, implemented by Correspondence tables, which for example apply the transformations represented by the corresponding curves of FIGS. 5A, 5B and 5C. Alternatively, the transformations are those shown in Figures 8A and 8B, as will now be described. FIG. 8A illustrates the saturation factor SFpSAT for saturation values between 0 and 255, assuming an 8-bit saturation value, although another scale, which is for example user-defined, may be used. . For color saturation between 0 and 50, no increase in saturation is applied. Then, between the color saturation of 50 and 75, the saturation factor SFpSAT gradually increases from 100 to 160 percent. For color saturation values between 75 and 150, the saturation factor SF-pSAT is relatively stable at 160 percent, before gradually falling back to 100 percent between color saturations of 150 and 200. With a color saturation of 200 and 255, the saturation factor SFpSAT is equal to 100 percent, which implies the absence of a saturation increase. FIG. 8B illustrates the saturation factor SFp HUE 30 for hue values progressing from red to green and towards blue and then returning to the red, for example on a scale from 0 to 360, or on a scale based on a power of 2, as a scale from 0 to 255, in other words an 8-bit scale. In this example, hues ranging from red to green, for example ranging from 0 to about 100 on a scale of 0 to 255, result in a relatively low saturation factor, for example at 100 percent. . Then, the saturation factor SFp HUE rises gradually to about 145 percent for a tint of about 120, which is maintained to a tint of about 140. For tints of about 140 to 175, the saturation factor SF-pHUE increases up to about 170%, before falling back down to 100 percent for a tint of about 200, corresponding to the beginning of red again.

Les facteurs de saturation de couleur SFp SAT et SFpHuE sont fournis à un bloc 710 (MIN), qui détermine la valeur la plus faible de ces facteurs de saturation afin de fournir un facteur de saturation de sortie SFp' utilisé pour augmenter la saturation de pixel du pixel p. SFp SAT and SFpHuE color saturation factors are provided to a block 710 (MIN), which determines the lowest value of these saturation factors to provide an output saturation factor SFp 'used to increase pixel saturation. pixel p.

Le facteur de saturation SFp' provenant du bloc 710 est fourni à un bloc de modification de saturation de couleur 712 (SAT MOD (HSV IN RGB)). Plutôt que de recevoir directement le pixel d'entrée, le bloc 712 le reçoit après qu'une modification initiale de saturation de couleur a aussi déjà été réalisée par un bloc 714 (SAT MOD(YUV)). Le bloc 714 applique par exemple le facteur de saturation SFp généré par le module 100 de la figure 1 décrit précédemment. Ainsi, ce facteur de saturation SFp correspond par exemple à l'augmentation de saturation maximum sans écrêtage des valeurs RGB. A titre de variante, le bloc 714 pourrait appliquer un facteur de saturation défini par l'utilisateur. Les deux blocs 712 et 714 appliquent une saturation de couleur aux valeurs RGB, mais la saturation de couleur appliquée par le bloc 714 est par exemple une modification de saturation de couleur définie conformément à l'espace colorimétrique YUV, dans laquelle la distance entre les valeurs RGB et la valeur de luminance est modifiée, tandis que le bloc 712 applique une modification de saturation de couleur selon l'espace colorimétrique HSV, d'après lequel la distance entre la plus élevée des valeurs RGB et les deux autres valeurs RGB est modifiée. The saturation factor SFp 'from block 710 is supplied to a color saturation change block 712 (SAT MOD (HSV IN RGB)). Rather than receiving the input pixel directly, the block 712 receives it after an initial color saturation modification has also already been made by a block 714 (SAT MOD (YUV)). Block 714 applies, for example, the saturation factor SFp generated by the module 100 of FIG. 1 previously described. Thus, this saturation factor SFp corresponds, for example, to the maximum saturation increase without clipping of the RGB values. Alternatively, block 714 could apply a user-defined saturation factor. The two blocks 712 and 714 apply a color saturation to the RGB values, but the color saturation applied by the block 714 is for example a color saturation change defined according to the YUV color space, in which the distance between the values RGB and the luminance value is changed, while the block 712 applies a color saturation change according to the HSV color space, whereby the distance between the highest of the RGB values and the other two RGB values is changed.

B10812 - 10-GR2-1055 20 Cela sera décrit plus en détail ci-après en référence à la figure 9. Optionnellement, le bloc 710 peut aussi recevoir un facteur de saturation maximum SFmax provenant d'un bloc de 5 calcul 716, qui détermine l'augmentation de saturation maximum qui peut être appliquée aux valeurs RGB telles que modifiées par le bloc 714, tout en évitant d'écrêter les valeurs RGB, comme cela sera décrit plus en détail ci-après. Dans ce cas, le bloc 710 fournit le plus faible des trois facteurs de saturation 10 SFmax, SFpHUE et S FpSAT- Dans certains modes de réalisation, plutôt que d'appliquer le facteur de saturation SF ' fourni par le bloc 710, le bloc 712 pourrait appliquer un facteur de saturation défini d'une façon différente, comme par exemple un facteur de saturation 15 défini par l'utilisateur. Dans un tel cas, les blocs 704, 706, 708 et 710 pourraient être supprimés. La figure 9 est un graphique représentant un exemple de modification de saturation de couleur à deux étages. Comme dans la figure 2, le canal A est la valeur la plus élevée des 20 valeurs RGB, le canal C est la valeur la plus faible des valeurs RGB, et le canal B est la valeur médiane des valeurs RGB. Les valeurs initiales des canaux A, B et C du pixel d'entrée RGB, en un point représenté par une ligne en trait interrompu 902, correspondent par exemple à 50 pourcent de 25 l'augmentation de saturation maximum qui peut être appliquée dans l'espace colorimétrique YUV avant qu'un écrêtage des canaux RGB ne se produise. Dans l'exemple de la figure 9, le bloc 714 de la figure 7 applique l'augmentation de saturation maximum, amenant la saturation de couleur à 100 pourcent, comme cela est 30 représenté par des lignes en trait interrompu 904. Ainsi, la luminance reste constante, tandis que les canaux A, B et C s'écartent de la luminance. Ensuite, le bloc 712 de la figure 7 applique une modification de saturation de couleur dans l'espace colorimétrique 35 HSV. Par exemple, cela entraîne une augmentation de l'écart B10812 - 10-GR2-1055 21 entre les canaux B et C par rapport au canal le plus élevé, qui est le canal A. En particulier, en supposant que les canaux A, B et C ont initialement des valeurs a, b et c, après l'application du facteur de saturation SFp', la valeur du canal A va rester à a, tandis que les valeurs modifiées b' et c' des canaux B et C deviennent : b'=a-(a-b).SFp' c'-a-(a-c).SFp' Si la valeur modifiée c' du canal C est choisie égale à zéro, on peut calculer la valeur de SFp' qui entraîne une augmentation de saturation maximum tout en évitant un écrêtage des valeurs RGB, en d'autres termes la valeur qui entraîne que le canal C atteint juste la valeur de code minimum, qui est par exemple égale à zéro. En d'autres termes, le calcul suivant peut être effectué : SFmax= a/(a-c) où a est égal à max(Rp,Gp,Bp) et c est égal à min(Rp,Gp,Bp). On notera qu'avantageusement la teinte est préservée pendant cette modification de saturation à deux étages. B10812 - 10-GR2-1055 20 This will be described in more detail below with reference to FIG. 9. Optionally, block 710 may also receive a maximum saturation factor SFmax from calculation block 716, which determines the maximum saturation increase that can be applied to the RGB values as modified by block 714, while avoiding clipping the RGB values, as will be described in more detail below. In this case, block 710 provides the lowest of the three saturation factors SFmax, SFpHUE and S FpSAT. In some embodiments, rather than applying the saturation factor SF 'provided by block 710, block 712 could apply a saturation factor defined in a different way, such as a user-defined saturation factor. In such a case, the blocks 704, 706, 708 and 710 could be deleted. Fig. 9 is a graph showing an example of a two-stage color saturation change. As in FIG. 2, channel A is the highest value of the 20 RGB values, channel C is the lowest value of the RGB values, and channel B is the median value of the RGB values. The initial values of channels A, B and C of the RGB input pixel, at a point represented by a dashed line 902, correspond for example to 50 percent of the maximum saturation increase that can be applied in the YUV color space before clipping of RGB channels occurs. In the example of Fig. 9, block 714 of Fig. 7 applies the maximum saturation increase, causing the 100 percent color saturation, as shown by dashed lines 904. Thus, the luminance remains constant, while channels A, B and C deviate from the luminance. Next, block 712 of FIG. 7 applies a color saturation change in the HSV color space. For example, this results in an increase in the B10812 - 10-GR2-1055 21 gap between the B and C channels relative to the highest channel, which is the A channel. In particular, assuming the A, B channels and C initially have values a, b and c, after applying the saturation factor SFp ', the value of the channel A will remain at a, while the modified values b' and c 'of the channels B and C become: b '= a- (ab) .SFp' c'-a- (ac) .SFp 'If the modified value c' of channel C is chosen to be zero, the value of SFp 'which results in an increase of maximum saturation while avoiding clipping of the RGB values, in other words the value that causes the channel C just to reach the minimum code value, which is for example equal to zero. In other words, the following calculation can be done: SFmax = a / (a-c) where a is equal to max (Rp, Gp, Bp) and c is equal to min (Rp, Gp, Bp). It will be noted that, advantageously, the hue is preserved during this two-stage saturation modification.

La figure 10 illustre un dispositif de traitement 1000 destiné à traiter des images selon les procédés décrits ici. Une mémoire d'image 1002 (IMAGE MEM) mémorise une ou plusieurs images, pour lesquelles une modification de saturation de couleur est à appliquer. La mémoire d'image est couplée à un processeur 1004 (P), qui est sous le contrôle d'une mémoire d'instructions 1006 (INSTR MEM). Les instructions de la mémoire d'instruction 1006 commandent le processeur 1004 pour mettre en oeuvre l'augmentation de saturation de couleur décrite précédemment, et un afficheur 1008 (DISPLAY) est par exemple prévu pour afficher l'image résultante. Une entrée d'utilisateur 1010 (USER INPUT) permet par exemple à l'utilisateur de sélectionner une image dans la mémoire d'image 1002 pour traitement, et aussi pour définir optionnellement un facteur de saturation d'utilisateur. Fig. 10 illustrates a processing device 1000 for processing images according to the methods described herein. An image memory 1002 (IMAGE MEM) stores one or more images, for which a color saturation change is to be applied. The image memory is coupled to a processor 1004 (P), which is under the control of an instruction memory 1006 (MEM INSTR). The instruction memory instructions 1006 control the processor 1004 to implement the color saturation increase described above, and a display 1008 (DISPLAY) is for example provided to display the resulting image. A user input 1010 (USER INPUT) allows, for example, the user to select an image in the image memory 1002 for processing, and also to optionally define a user saturation factor.

B10812 - 10-GR2-1055 22 Le dispositif 1000 est par exemple un PC (ordinateur personnel) ou un ordinateur portable, une caméra numérique, ou un autre dispositif électronique capable de traiter une image numérique. The device 1000 is for example a PC (personal computer) or a laptop, a digital camera, or other electronic device capable of processing a digital image.

Dans certains modes de réalisation, les pixels d'une image à traiter selon les procédés décrits ici pourraient être fournis au dispositif 1000 en flux continu, auquel cas la mémoire d'image 1002 pourrait être omise. L'avantage de générer un facteur de saturation maximum 10 pour un pixel sur la base de la plus basse et de la plus élevée des valeurs RGB est qu'on peut éviter un écrêtage des valeurs RGB, et qu'ainsi la teinte du pixel peut être conservée. En outre, un avantage du fait de déterminer un facteur de saturation sur la base de l'une des valeurs parmi saturation 15 de couleur, teinte et luminance d'un pixel, est que la saturation de couleur peut être limitée automatiquement sur la base des caractéristiques de l'image. En outre, un avantage du fait de réaliser une modification de saturation de couleur à deux étages, d'abord en 20 modifiant la distance entre la luminance et chacun des canaux RGB tout en maintenant la luminance, et ensuite en modifiant la distance entre le plus élevé des canaux RGB et chacun des autres canaux RGB, est qu'on peut appliquer une plus large augmentation de saturation. En outre, la plus grande partie de l'augmentation 25 de saturation est appliquée d'une manière sûre, tout en préservant la luminance, puis une saturation de couleur additionnelle peut être appliquée à des teintes spécifiques, ce qui par exemple diminue la luminance tout en préservant la teinte, et conduisant à une qualité d'image améliorée, par 30 exemple des densités de couleur plus sombres et/ou plus profondes. Cela peut être particulièrement avantageux dans le cas de ciel bleu. Avec la description ainsi faite d'au moins un mode de réalisation de l'invention, diverses altérations, modifications 35 et améliorations apparaîtront facilement à l'homme de l'art. In some embodiments, the pixels of an image to be processed according to the methods described herein could be provided to the streaming device 1000, in which case the image memory 1002 could be omitted. The advantage of generating a maximum saturation factor of one pixel on the basis of the lowest and the highest of the RGB values is that clipping of the RGB values can be avoided, and so the hue of the pixel can to be preserved. In addition, an advantage of determining a saturation factor based on one of the color, shade and luminance saturation values of a pixel is that the color saturation can be automatically limited based on features of the image. In addition, an advantage of performing a two-stage color saturation change, first by changing the distance between the luminance and each of the RGB channels while maintaining the luminance, and then changing the distance between the most high RGB channels and each of the other RGB channels, is that one can apply a larger increase in saturation. In addition, most of the saturation increase is safely applied while preserving the luminance, and then additional color saturation can be applied to specific hues, which for example decreases luminance while preserving the hue, and leading to improved image quality, e.g. darker and / or deeper color densities. This can be particularly advantageous in the case of blue sky. With the description thus made of at least one embodiment of the invention, various alterations, modifications and improvements will readily occur to those skilled in the art.

B10812 - 10-GR2-1055 23 Par exemple, il sera clair pour l'homme de l'art que, bien que les modes de réalisation décrivent ici la modification de la saturation de couleur d'un pixel ou de tous les pixels d'une image, dans des variantes de réalisation, seuls certains 5 pixels d'une image peuvent être sélectionnés pour modification. En outre, il sera clair pour l'homme de l'art que, alors que la figure 10 concerne une mise en oeuvre logicielle des modes de réalisation décrits ici, à titre de variante, les modes de réalisation décrits ici pourraient être mis en oeuvre 10 au moins partiellement sous forme de matériel. En outre, les diverses caractéristiques décrites en relation avec les modes de réalisation de la présente description pourraient être combinées dans des variantes de réalisation selon des combinaisons quelconques. For example, it will be clear to those skilled in the art that, although the embodiments here describe the modification of the color saturation of a pixel or all pixels of in an embodiment, only certain pixels of an image may be selected for modification. Further, it will be clear to those skilled in the art that while FIG. 10 relates to a software implementation of the embodiments described herein, as an alternative, the embodiments described herein could be implemented. At least partially in the form of equipment. In addition, the various features described in connection with the embodiments of the present description could be combined in variant embodiments in any combination.

Claims (13)

REVENDICATIONS1. Procédé pour réaliser une modification de la saturation de couleur d'au moins un pixel d'une image, comprenant les étapes suivantes : déterminer, sur la base de valeurs de pixel d'un 5 premier pixel, au moins une valeur parmi une valeur de saturation de couleur, une valeur de luminance et une valeur de teinte correspondant au premier pixel ; déterminer sur la base de ladite au moins une valeur, un facteur de saturation (SFpSAT, SFpHuE, SEpLUM) ; et 10 modifier le niveau de saturation de couleur du premier pixel sur la base du facteur de saturation. REVENDICATIONS1. A method for effecting a color saturation change of at least one pixel of an image, comprising the steps of: determining, based on pixel values of a first pixel, at least one of a value of color saturation, a luminance value, and a hue value corresponding to the first pixel; determining on the basis of said at least one value a saturation factor (SFpSAT, SFpHuE, SEpLUM); and changing the color saturation level of the first pixel based on the saturation factor. 2. Procédé selon la revendication 1, dans lequel l'étape consistant à déterminer ladite au moins une valeur comprend la détermination, sur la base de valeurs du premier 15 pixel, d'au moins deux valeurs parmi une valeur de saturation de couleur, une valeur de luminance et une valeur de teinte correspondant au premier pixel, et dans lequel l'étape de détermination du facteur de saturation comprend la détermination d'un premier facteur de saturation maximum sur la base d'une 20 première desdites au moins deux valeurs, la détermination d'un deuxième facteur de saturation maximum sur la base d'une deuxième desdites au moins deux valeurs, et la sélection du plus faible des premier et deuxième facteurs de saturation maximum. The method of claim 1, wherein the step of determining said at least one value comprises determining, based on first pixel values, at least two of a color saturation value, a luminance value and a hue value corresponding to the first pixel, and wherein the step of determining the saturation factor comprises determining a first maximum saturation factor based on a first of said at least two values, determining a second maximum saturation factor based on a second of said at least two values, and selecting the lowest of the first and second maximum saturation factors. 3. Procédé selon la revendication 1, dans lequel 25 l'étape de détermination de ladite au moins une valeur comprend la détermination, sur la base de valeurs du premier pixel, d'une valeur de saturation de couleur, d'une valeur de luminance et d'une valeur de teinte correspondant au premier pixel, et dans lequel l'étape de détermination du facteur de saturation comprend 30 la détermination d'un premier facteur de saturation maximum sur la base de ladite valeur de saturation de couleur, la détermination d'un deuxième facteur de saturation maximum sur la base de la valeur de teinte, et la détermination d'un troisième facteur de saturation maximum sur la base de la valeur de- B10812 - 10-GR2-1055 25 luminance, et la sélection du plus faible des premier, deuxième et troisième facteurs de saturation maximum. The method of claim 1, wherein the step of determining said at least one value comprises determining, based on values of the first pixel, a color saturation value, a luminance value. and a hue value corresponding to the first pixel, and wherein the step of determining saturation factor comprises determining a first maximum saturation factor based on said color saturation value, determining a second maximum saturation factor based on the hue value, and determining a third maximum saturation factor on the basis of the luminance value, and the selection of the most low first, second and third maximum saturation factors. 4. Procédé selon l'une quelconque des revendications 1 à 3, dans lequel le facteur de saturation est déterminé par une 5 table de correspondance. 4. The method of any one of claims 1 to 3, wherein the saturation factor is determined by a look-up table. 5. Procédé selon l'une quelconque des revendications 1 à 4, dans lequel ladite au moins une valeur parmi une valeur de saturation de couleur, une valeur de luminance et une valeur de teinte est une valeur de saturation de couleur, et dans lequel, 10 si la valeur de saturation de couleur est inférieure à un premier seuil, le facteur de saturation indique une diminution de la saturation de couleur du pixel, et si la valeur de saturation de couleur est supérieure au premier seuil, le facteur de saturation indique une augmentation de la saturation de couleur 15 du pixel. The method according to any one of claims 1 to 4, wherein said at least one of a color saturation value, a luminance value and a hue value is a color saturation value, and wherein, 10 if the color saturation value is less than a first threshold, the saturation factor indicates a decrease in the color saturation of the pixel, and if the color saturation value is greater than the first threshold, the saturation factor indicates a increased color saturation of the pixel. 6. Procédé selon l'une quelconque des revendications 1 à 5, comprenant en outre les étapes suivantes : calculer une valeur de luminance (Y) sur la base de valeurs RGB du premier pixel ; 20 calculer une première augmentation maximum (SFmaxH) de la saturation de couleur sur la base de la plus élevée parmi les valeurs RGB et de la valeur de luminance ; et calculer une deuxième augmentation maximum (SFMaxL) de la saturation de couleur sur la base de la plus faible parmi les 25 valeurs RGB et de la valeur de luminance ; dans lequel la modification du niveau de saturation de couleur du premier pixel comprend la modification du niveau de saturation de couleur sur la base de la valeur la plus faible parmi les premières et deuxièmes augmentations maximum et le facteur de saturation. 30 The method of any one of claims 1 to 5, further comprising the steps of: calculating a luminance value (Y) based on RGB values of the first pixel; Calculating a first maximum increase (SFmaxH) of the color saturation based on the highest of the RGB values and the luminance value; and calculating a second maximum increase (SFMaxL) of the color saturation based on the lowest of the RGB values and the luminance value; wherein changing the color saturation level of the first pixel includes changing the color saturation level based on the lowest value among the first and second maximum increases and the saturation factor. 30 7. Procédé selon l'une quelconque des revendications 1 à 6, dans lequel les valeurs de pixel du premier pixel sont des valeurs RGB (rouge, vert, bleu), et dans lequel la modification de la saturation de couleur comprend l'augmentation de la distance entre la plus élevée et la plus faible des valeurs RGB.B10812 - 10-GR2-1055 26 The method of any one of claims 1 to 6, wherein the pixel values of the first pixel are RGB values (red, green, blue), and wherein the change in color saturation includes the increase of the distance between the highest and the lowest values RGB.B10812 - 10-GR2-1055 26 8. Procédé selon la revendication 7, dans lequel la modification de la saturation de couleur comprend la réalisation de l'opération suivante : b'=a-(a-b).SFp' c1=a-(a-c).SFp' où a, b et c sont respectivement la valeur la plus haute, la valeur intermédiaire et la valeur la plus faible des valeurs RGB, b' est la nouvelle valeur de la valeur RGB intermédiaire, c' est la nouvelle valeur de la valeur RGB la plus faible, et SFp' est le facteur de saturation. The method of claim 7, wherein the altering of the color saturation comprises performing the following operation: b '= a- (ab) .SFp' c1 = a- (ac) .SFp 'where a, b and c are respectively the highest value, the intermediate value and the lowest value of the RGB values, b 'is the new value of the intermediate RGB value, it is the new value of the lowest RGB value, and SFp 'is the saturation factor. 9. Procédé selon la revendication 8, comprenant en outre le calcul d'une saturation maximum gmax en réalisant l'opération suivante : SFmax= ai(a-c) où la saturation de couleur du pixel est modifiée en appliquant la valeur la plus faible parmi le facteur de saturation et la saturation maximum. The method according to claim 8, further comprising calculating a maximum saturation gmax by performing the following operation: SFmax = ai (ac) where the color saturation of the pixel is changed by applying the lowest value among the saturation factor and maximum saturation. 10. Procédé selon la revendication 8, comprenant, avant la réalisation de la modification de saturation de couleur, la réalisation d'une première modification de saturation de couleur du premier pixel en réalisant le calcul matriciel suivant : 1c Ai, + (1 -WeKSFp riTG4 - SFp) WB - SFp) - Rp P G' = feRx(1. - SFp) WG + (1 -PiTG»cSFI, W13.4 - SFp) P P »$'p- eRmi - SFp) Wcx(1 - SFp) WB + (1 -W11KSFp 3, dans lequel Rp, Gp, et Bp, sont les valeurs RGB, R'p, G'p, et B'P sont les valeurs RGB après la première modification de saturation de couleur, WR, WG et WB sont des coefficients de pondération constants correspondant aux valeurs R, G et B respectivement, et SFp est un facteur de saturation de la première modification de saturation de couleur. The method according to claim 8, comprising, prior to performing the color saturation modification, performing a first color saturation change of the first pixel by performing the following matrix calculation: 1c Ai, + (1 -WeKSFp rITG4 - SFp) WB - SFp) - Rp PG '= feRx (1 - SFp) WG + (1 -PiTG "cSFI, W13.4 - SFp) PP" $' p- eRmi - SFp) Wcx (1 - SFp) ) WB + (1 -W11KSFp 3, in which Rp, Gp, and Bp, are the RGB values, R'p, G'p, and B'P are the RGB values after the first color saturation change, WR, WG and WB are constant weighting coefficients corresponding to the R, G and B values respectively, and SFp is a saturation factor of the first color saturation change. 11. Procédé selon la revendication 10, comprenant en outre le calcul du facteur de saturation de la première modification de saturation de couleur par les étapes suivantes :B10812 - 10-GR2-1055 27 calculer une valeur de luminance (Y) sur la base de valeurs RGB du premier pixel ; calculer une première augmentation maximum (SFmaxH) de la saturation de couleur sur la base de la plus élevée parmi les 5 valeurs RGB et de la valeur de luminance ; calculer une deuxième augmentation maximum (SFmaxL) de la saturation de couleur sur la base de la plus faible parmi les valeurs RGB et de la valeur de luminance ; et déterminer la valeur la plus faible parmi les pre10 mières et deuxièmes augmentations maximum et le facteur de saturation. The method of claim 10, further comprising calculating the saturation factor of the first color saturation change by the steps of: calculating a luminance value (Y) based on RGB values of the first pixel; calculating a first maximum increase (SFmaxH) of the color saturation based on the highest of the 5 RGB values and the luminance value; calculating a second maximum increase (SFmaxL) of the color saturation based on the lowest of the RGB values and the luminance value; and determining the lowest value among the first and second highest increases and the saturation factor. 12. Dispositif pour réaliser une modification de la saturation de couleur d'au moins un pixel d'une image, le dispositif comprenant une mémoire agencée pour mémoriser l'image, et 15 un processeur agencé pour : déterminer, sur la base de valeurs de pixel d'un premier pixel, au moins une valeur parmi une valeur de saturation de couleur, une valeur de luminance et une valeur de teinte correspondant au premier pixel ; 20 déterminer, sur la base de ladite au moins une valeur, un facteur de saturation (SFpSAT, SFpHuE, SFpLum) ; et modifier le niveau de saturation de couleur du premier pixel sur la base du facteur de saturation. 12. Apparatus for effecting a change in the color saturation of at least one pixel of an image, the device comprising a memory arranged to store the image, and a processor arranged to: determine, based on values of pixel of a first pixel, at least one of a color saturation value, a luminance value and a hue value corresponding to the first pixel; Determining, on the basis of said at least one value, a saturation factor (SFpSAT, SFpHuE, SFpLum); and changing the color saturation level of the first pixel based on the saturation factor. 13. Dispositif selon la revendication 12, dans lequel 25 la détermination de ladite au moins une valeur comprend la détermination, sur la base de valeurs du premier pixel, d'au moins deux valeurs parmi une valeur de saturation de couleur, une valeur de luminance et une valeur de teinte correspondant au premier pixel, et dans lequel la détermination du facteur de 30 saturation comprend la détermination d'un premier facteur de saturation maximum sur la base d'une première desdites au moins deux valeurs, la détermination d'un deuxième facteur de saturation maximum sur la base d'une deuxième desdites au moins deux valeurs, et la sélection du plus faible parmi les premier et 35 deuxième facteurs de saturation maximum. Apparatus according to claim 12, wherein the determination of said at least one value comprises determining, on the basis of first pixel values, at least two of a color saturation value, a luminance value. and a hue value corresponding to the first pixel, and wherein determining the saturation factor comprises determining a first maximum saturation factor based on a first of said at least two values, determining a second maximum saturation factor based on a second of said at least two values, and selecting the lowest of the first and second maximum saturation factors.
FR1158374A 2011-09-21 2011-09-21 Method for carrying out modification of color saturation of pixel of image in e.g. LCD, involves determining pixel, determining saturation factor, and modifying level of saturation of color on basis of saturation factor Pending FR2980324A1 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
FR1158374A FR2980324A1 (en) 2011-09-21 2011-09-21 Method for carrying out modification of color saturation of pixel of image in e.g. LCD, involves determining pixel, determining saturation factor, and modifying level of saturation of color on basis of saturation factor
US13/624,624 US9449578B2 (en) 2011-09-21 2012-09-21 Circuitry for image processing
US13/624,613 US8897559B2 (en) 2011-09-21 2012-09-21 Method, system and apparatus modify pixel color saturation level

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR1158374A FR2980324A1 (en) 2011-09-21 2011-09-21 Method for carrying out modification of color saturation of pixel of image in e.g. LCD, involves determining pixel, determining saturation factor, and modifying level of saturation of color on basis of saturation factor

Publications (1)

Publication Number Publication Date
FR2980324A1 true FR2980324A1 (en) 2013-03-22

Family

ID=45463780

Family Applications (1)

Application Number Title Priority Date Filing Date
FR1158374A Pending FR2980324A1 (en) 2011-09-21 2011-09-21 Method for carrying out modification of color saturation of pixel of image in e.g. LCD, involves determining pixel, determining saturation factor, and modifying level of saturation of color on basis of saturation factor

Country Status (1)

Country Link
FR (1) FR2980324A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111899182A (en) * 2019-05-06 2020-11-06 浙江宇视科技有限公司 Color enhancement method and device

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0677972A2 (en) * 1994-04-14 1995-10-18 Matsushita Electric Industrial Co., Ltd. Method of and apparatus for color conversion
EP1383341A2 (en) * 2002-07-20 2004-01-21 Samsung Electronics Co., Ltd. Method and apparatus for adaptively enhancing colors in color images
EP1480468A2 (en) * 2003-05-17 2004-11-24 STMicroelectronics Asia Pacific Pte Ltd Method and apparatus for compensating for chrominance saturation
US7746411B1 (en) * 2005-12-07 2010-06-29 Marvell International Ltd. Color management unit

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0677972A2 (en) * 1994-04-14 1995-10-18 Matsushita Electric Industrial Co., Ltd. Method of and apparatus for color conversion
EP1383341A2 (en) * 2002-07-20 2004-01-21 Samsung Electronics Co., Ltd. Method and apparatus for adaptively enhancing colors in color images
EP1480468A2 (en) * 2003-05-17 2004-11-24 STMicroelectronics Asia Pacific Pte Ltd Method and apparatus for compensating for chrominance saturation
US7746411B1 (en) * 2005-12-07 2010-06-29 Marvell International Ltd. Color management unit

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111899182A (en) * 2019-05-06 2020-11-06 浙江宇视科技有限公司 Color enhancement method and device
CN111899182B (en) * 2019-05-06 2024-04-05 浙江宇视科技有限公司 Color enhancement method and device

Similar Documents

Publication Publication Date Title
RU2554860C2 (en) Method and device for image data conversion
EP3108649B1 (en) Color space in devices, signal and methods for video encoding, transmission, and decoding
JP6367839B2 (en) Display management for high dynamic range video
US10043251B2 (en) Enhanced tone mapper for high dynamic range images and video
US8897559B2 (en) Method, system and apparatus modify pixel color saturation level
KR102105645B1 (en) Luminance changing image processing with color constraints
JP6396596B2 (en) Luminance modified image processing with color constancy
CN101715141B (en) Method and equip for joint enhancement of lightness, color and contrast of images and video
US10839495B2 (en) Computing devices and methods of image processing with input image data and reference tone mapping strength data
KR20210027500A (en) Scalable systems for controlling color management comprising varying levels of metadata
WO2016124942A1 (en) Method and apparatus for conversion of hdr signals
WO2022256411A1 (en) System and method for displaying super saturated color
EP3577627B1 (en) Method for processing an input image and associated device, terminal equipment and computer program
FR2980325A1 (en) Method for increasing color saturation of red, green, blue values of pixel of digital image, involves increasing color saturation of pixel of image based on calculated maximum increases of saturation factor
FR2980324A1 (en) Method for carrying out modification of color saturation of pixel of image in e.g. LCD, involves determining pixel, determining saturation factor, and modifying level of saturation of color on basis of saturation factor
EP3391331A1 (en) Method of processing a digital image, device, terminal equipment and computer program associated therewith
Kim et al. Color saturation compensation in iCAM06 for high-chroma HDR imaging
EP0757498A1 (en) Method for correcting luminance and chrominance defects of a matrix display and matrix display and circuit for carrying out the method
EP3873096A1 (en) Improved hdr color processing for saturated colors
Lee et al. Color image enhancement method using a space-variant luminance map
Adams et al. Perceptually based image processing algorithm design
Bezryadin et al. Chromatic coordinates in HDR image coding

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 5