Question

Je regarde un document qui décrit les couleurs standard utilisées en dentisterie pour décrire la couleur d'une dent.Ils citent teinte, valeur, chrominance valeurs, et indiquez qu'elles proviennent de la description de la couleur Munsell de 1905 :

Le système de notation des couleurs développé par A.H.Munsell en 1905 identifie la couleur en termes de trois Attributs:HUE, VALUE (Luminosité) et CHROMA (saturation) [15]

TEINTE (H) :Munsell a défini la teinte comme le qualité par laquelle nous distinguons un couleur d’un autre.Il en a sélectionné cinq Couleurs principales :rouge, jaune, vert, bleu et pourpre ;et cinq Couleurs intermédiaires :jaune-rouge, vert-jaune, bleu-vert, violet-bleu, et rouge-violet.Ceux-ci ont été placés autour d’un cercle chromatique en des points égaux et les couleurs entre ces deux sont un mélange des deux, dans en faveur du point/de la couleur le plus proche (voir Fig. 1.).

alt text

VALEUR (V):Cette notation indique que le la clarté ou l’obscurité d’une couleur par rapport à une échelle de gris neutre, qui s’étend du noir absolu (symbole de valeur 0) au blanc absolu (symbole de valeur 10).Il s’agit essentiellement de à quel point la couleur est « brillante ».

CHROMA (C) :Cela indique le degré de divergence d’une teinte donnée par rapport à une gris neutre de la même valeur.Le L’échelle de chrominance s’étend de 0 pour un gris neutre à 10, 12, 14 ou plus, en fonction de la force (saturation) de l’échantillon à Évalué.

Il existe différents systèmes pour catégorisation de la couleur, le système Vita est le plus souvent utilisé en dentisterie.Celui-ci utilise les lettres A, B, C et D pour Notez la teinte (couleur) de la dent.La chrominance et la valeur sont toutes deux indiqué par une valeur comprise entre 1 et 4.A1 étant plus léger que A4, mais A4 étant plus saturé que A1.S’il est placé dans l’ordre de valeur, c’est-à-direluminosité, le de la plus brillante à la plus foncée être:

A1, B1, B2, A2, A3, D2, C1, B3, D3, D4, A3.5, B4, C2, A4, C3, C4

Les valeurs exactes de teinte, de valeur et de chrome pour chacune des nuances sont illustrées ci-dessous (16)

alt text

Ma question est donc la suivante : quelqu'un peut-il convertir Munsell HVC en RVB, HSB ou HSL ?

Hue    Value (Brightness) Chroma(Saturation)
===    ================== ==================
4.5    7.80               1.7
2.4    7.45               2.6
1.3    7.40               2.9
1.6    7.05               3.2
1.6    6.70               3.1
5.1    7.75               1.6
4.3    7.50               2.2
2.3    7.25               3.2
2.4    7.00               3.2
4.3    7.30               1.6
2.8    6.90               2.3
2.6    6.70               2.3
1.6    6.30               2.9
3.0    7.35               1.8
1.8    7.10               2.3
3.7    7.05               2.4

Ils disent que la valeur (luminosité) varie de 0..10, ce qui est bien.Je considère donc que 7,05 signifie 70,5 %.

Mais comment ça Hue mesuré en ?Je suis habitué à teinte étant mesuré dans degrees (0..360).Mais les valeurs que je vois seraient toutes rouges - alors qu'elles devraient être plus jaunes ou brunes.

Enfin, il est indiqué que Choma/Saturation peut varier de 0..10 ...ou encore plus haut - ce qui donne l'impression que c'est une échelle arbitraire.

Alors, quelqu'un peut-il convertir Munsell HVC en HSB ou HSL, ou mieux encore, RVB ?

Était-ce utile?

La solution

La spécification de la teinte que vous avez donné ici est incomplète (4.5 devrait être 4.5Y , etc.). Étant donné que le lien est mort, si quelqu'un est intéressé, les spécifications sont encore en vie ici: http: //web.archive .org / web / 20071103065312 / http: //lib.umich.edu/dentlib/Dental_tables/Colorshadguid.html

L'utilitaire gratuit uniquement pour la conversion Munsell je pouvais trouver était le suivant:

http://web.archive.org/ web / 20020809130910 / standards.gretagmacbeth.com / cmc / munsell.exe

Très vieux comme vous pouvez le voir, mais semble bien fonctionner. Les programmes actuels qui peuvent le faire ne sont pas libres:

Les détenteurs actuels des produits Munsell sont X-Rite , ils ont probablement des solutions de conversion ainsi.

En outre, notez que le lien que vous avez fourni comprend des définitions pour les mêmes couleurs dans d'autres coordonnées de couleur - à savoir Yxy et CIE l a b *. Les deux peuvent être convertis librement en ligne à http://www.colorpro.com/info/tools/ convert.htm ou hors ligne avec ce convertisseur couleur libre

Autres conseils

C’est plutôt impliqué.La réponse courte est, la conversion des codes Munsell en RVB implique une interpolation de données empiriques en 3D hautement non linéaires. Le seul ensemble de données accessible au public a été collecté dans les années 1930.Les programmes gratuits ou peu coûteux que j'ai trouvés sur le net se sont révélés défectueux.J'ai écrit le mien.Mais je prends de l'avance.Commençons par les bases.

Les codes Munsell sont de nature différente de ces autres codes, xyY, Lab et RGB.La notation Munsell décrit la couleur d'un objet - ce que ressentent les gens lorsqu'ils voient l'objet.(Isaac Newton a été le premier à réaliser que la couleur est dans l'œil du spectateur.) Munsell a mené de nombreuses expériences avec des sujets humains et des dispositifs ingénieux.

Les autres codes, c'est-à-direxyY, Lunb* et RVB, décrivent lumière qui a rebondi sur un objet et a subi une convolution avec un modèle mathématique assez simple d'un œil humain.Certains termes Google sont « illuminant », « tri-stimulus » et « observateur standard CIE ».

Munsell décrit les couleurs des objets telles qu'elles sont perçues sous une grande variété d'illuminants.Un autre terme de Google est « adaptation chromatique ». L’adaptation chromatique dans le cerveau est automatique si l’éclairage n’est pas trop bizarre.C'est vraiment tout à fait remarquable.Prenez un morceau de papier à écrire dehors sous un ciel bleu.Le papier paraît blanc.Emportez-le à l'intérieur et regardez-le sous des lumières incandescentes (jaunâtres).Il a toujours l'air blanc !Munsell a exploité empiriquement cette étonnante puissance de traitement.Les codes Munsell préservent également la teinte perçue à différentes chromas.Un bleu ciel et un bleu poudré auxquels Munsell attribue la même notation de teinte, par ex.5RP, apparaîtra à l'humain typique ayant une vue normale comme étant de la même teinte.Plus d’informations à ce sujet dans la note de bas de page.

CIE xyY, Lunb* et RVB ne signifient rien sauf si un éclairage est spécifié.L'adaptation chromatique des illuminants dans le modèle mathématique est difficile à calculer.(Des approximations grossières mais simples peuvent être réalisées à l'aide des « matrices de Bradford ».) Le RVB que nous utilisons est par défaut « sRGB », qui spécifie un illuminant appelé D65.D65 ressemble à une journée sans nuages ​​à midi.Les numéros de laboratoire répertoriés par le PO sont probablement relatifs au D50, qui ressemble plus à la lumière de l'après-midi ou du matin.Les nombres xyY peuvent être relatifs à D50, ou ils peuvent être relatifs à une ancienne norme appelée C.Je ne vais pas vérifier.C était la lumière d’un luminaire standard relativement peu coûteux à construire dans les années 1930.C'est obsolète.Mais C joue un rôle clé dans la réponse à la question.

Dans les années 1930, les spécialistes des couleurs développaient des modèles mathématiques.L'une des choses qu'ils ont faites a été de prendre un livre de couleurs Munsell standard, d'éclairer la lumière illuminant-C sur les puces colorées du livre et d'enregistrer les données au format xyY.Cet ensemble de données, appelé « Munsell Renotation Data », est le seul qui soit disponible gratuitement.D’autres existent sûrement, mais ils restent secrets.

Bonne nouvelle cependant.L'ensemble de données fonctionne bien.L'autorité de Munsell est aujourd'hui une société appelée Gretag Macbeth.J'imagine qu'ils disposent de données volumineuses concernant les jetons de couleur qu'ils vendent.Les seuls chiffres que je connais et qu'ils publient sont les numéros sRGB du D50 Lab et du D65 pour un petit ensemble de couleurs sur leur "Vérificateur de couleurs" cartes.J'ai écrit un interpolateur basé sur les anciennes données de renotation.Il correspond presque exactement aux numéros de la carte Color Checker.J'ai le regret de vous informer que jusqu'à présent, je n'ai écrit que du code pour la conversion qui va dans la direction opposée à celle demandée par l'OP (il y a un an, au moment où je tape ceci).Cela va du sRGB à Munsell.Je clique sur une image et le programme affiche les notations sRGB et Munsell pour la zone sur laquelle j'ai cliqué.Je l'utilise pour la peinture à l'huile.

My

Note de bas de page:La CIE a une norme analogue à celle de Munsell.On l'appelle LCh en indice a,b.C'est Lunb* en coordonnées polaires.Les teintes sont en degrés.Les nombres de chrominance sont environ 5 fois supérieurs au C dans Munsell HVC.LCh a cependant ses problèmes.Si vous avez déjà utilisé un éditeur de photos pour augmenter la vivacité du ciel, pour ensuite voir le bleu virer au violet, le programme utilisait probablement LCh.Lorsque j'ai commencé à écrire mon programme, j'ignorais que Bruce Lindloom avait fait un travail parallèle à celui que je faisais. Son site internet m'a été d'une valeur inestimable pour terminer le projet.Il a conçu un espace qu'il appelle UPLab, qui est LCh redressé pour s'aligner sur Munsell.J'avais déjà réinventé LCh et (essentiellement) UPLab avant de découvrir Mr.Linbloom, mais sa connaissance du sujet dépasse de loin la mienne.

Munsell Renotation Système de conversion sRGB espace chromatique

couleur , notre package open source de la science des couleurs Python permet d'effectuer cette conversion.

De Munsell Renotation système CIE xyY colourspace

Les deux définitions suivantes basées sur la méthode Centore (2012) convertit entre Munsell Renotation Système et CIE xyY espace chromatique:

De CIE xyY colourspace à sRGB colourspace

Conversion de CIE xyY espace chromatique à sRGB espace chromatique se fait en convertissant d'abord à CIE XYZ valeurs trichromatiques et ensuite à sRGB colourspace en utilisant les définitions suivantes:

Mise en œuvre

Voici un exemple complet annoté en utilisant les définitions ci-dessus:

import colour

# The *Munsell Renotation System* colour we would like to convert
# to *sRGB* colourspace.
MRS_c = '4.2YR 8.1/5.3'

# The first step is to convert the *MRS* colour to *CIE xyY* 
# colourspace.
xyY = colour.munsell_colour_to_xyY(MRS_c)

# We then perform conversion to *CIE xyY* tristimulus values.
XYZ = colour.xyY_to_XYZ(xyY)

# The last step will involve using the *Munsell Renotation System*
# illuminant which is *CIE Illuminant C*:
# http://nbviewer.ipython.org/github/colour-science/colour-ipython/blob/master/notebooks/colorimetry/illuminants.ipynb#CIE-Illuminant-C
# It is necessary in order to ensure white stays white when
# converting to *sRGB* colourspace and its different whitepoint 
# (*CIE Standard Illuminant D65*) by performing chromatic 
# adaptation between the two different illuminant.
C = colour.ILLUMINANTS['CIE 1931 2 Degree Standard Observer']['C']
RGB = colour.XYZ_to_sRGB(XYZ, C)

print(RGB)
  

[0.96820063 0.74966853 0.60617991]

Vous pouvez également effectuer la conversion inverse de sRGB colourspace Munsell Renotation système :

import colour

C = colour.ILLUMINANTS['CIE 1931 2 Degree Standard Observer']['C']

RGB = (0.96820063, 0.74966853, 0.60617991)

print(colour.xyY_to_munsell_colour(colour.XYZ_to_xyY(colour.sRGB_to_XYZ(RGB, C))))
  

4.2YR 8.1 / 5.3

Références

  • Centore, P. (2012). Un algorithme d'inversion open-source pour la renotation Munsell. Couleur de recherche et d'application, 37 (6), 455-464. doi: 10.1002 / col.20715

Pour être complet, voici la version archive.org de ma page, qui contient les couleurs en 3, Munsell colorimétriques, Yxy et Lab:

Vita shade-guide colors
_________________________________________________________________

         Munsell         Chromaticity
         notation        coordinates             CIE L* a* b*
         (ref 151)       (ref 152)               (ref 151)
      _____________  _____________________   ___________________
Shade  H    V  C       Y      x      y        L*      a*     b*
_________________________________________________________________

A1    4.5Y 7.80/1.7   55.92  0.3352 0.3459   79.57  -1.61  13.05
A2    2.4Y 7.45/2.3   49.95  0.3468 0.3539   76.04  -0.08  16.73
A3    1.3Y 7.40/2.9   48.85  0.3559 0.3593   75.36   1.36  19.61
A3.5  1.6Y 7.05/3.2   44.12  0.3627 0.3657   72.31   1.48  21.81
A4    1.6Y 6.70/3.1   38.74  0.3633 0.3658   68.56   1.58  21.00
B1    5.1Y 7.75/1.6   54.76  0.3336 0.3447   78.90  -1.76  12.33
B2    4.3Y 7.50/2.2   50.97  0.3437 0.3549   76.66  -1.62  16.62
B3    2.3Y 7.25/3.2   46.91  0.3611 0.3669   74.13   0.47  22.34
B4    2.4Y 7.00/3.2   43.38  0.3620 0.3678   71.81   0.50  22.15
C1    4.3Y 7.30/1.6   47.16  0.3361 0.3462   74.21  -1.26  12.56
C2    2.8Y 6.95/2.3   42.12  0.3487 0.3563   70.95  -0.22  16.72
C3    2.6Y 6.70/2.3   39.11  0.3499 0.3569   68.83  -0.01  16.68
C4    1.6Y 6.30/2.7   33.77  0.3600 0.3622   64.78   1.59  18.66
D2    3.0Y 7.35/1.8   48.71  0.3391 0.3473   75.27  -0.54  13.47
D3    1.8Y 7.10/2.3   44.48  0.3482 0.3534   72.55   0.62  16.14
D4    3.7Y 7.05/2.4   43.45  0.3492 0.3591   71.86  -1.03  17.77
_________________________________________________________________
H        hue
V        value
C        chroma
Y        lightness
x and y  hue and chroma
L*       lightness
a*       hue and chroma on a red/green scale
b*       hue and chroma on a yellow/blue scale

Références

  • 151 O'Brien, W.J., Groh, C.L. et BOENKE, K.M. Une nouvelle équation de différence de couleur pour les petites nuances dentaires. J.Dent. Res. 69:. 1762-1764, 1990
  • 152 O'Brien, W.J., Groh, C.L. et BOENKE, K.M. données non publiées. Université du Michigan École de médecine dentaire, Ann Arbor.

Il y a un paquet R gratuit munsell qui sera (entre autres ) convertir les codes Munsell RVB:

R> library(munsell)
R> mnsl2hex("5PB 5/10")
[1] "#3B75BB"

Il y a une page que j'ai trouvé ici: munsell-to-rgb.blogspot.com qui semble faire exactement ce que vous recherchez. Il semble inachevée au moment, mais le propriétaire des plans de blog à jour régulièrement avec autant de conversions Munsell-à-RVB comme il peut (et il prend demande!).

Il est étonnant de voir combien il est difficile de trouver des tables de conversion accessibles pour ces systèmes de couleurs; nous espérons que ce sera notre réponse! : D

Je suis en retard à la fête, mais j'ai trouvé une autre ressource qui peut être utile à ce sujet.

Quelqu'un à la « Science Munsell couleur laboratoire » déterré des données 1943 de Munsell, tous basés sur la recherche des années 1930 Munsell: http://www.cis.rit.edu/research/mcsl2/online/munsell.php

La page fait référence à une feuille de calcul Excel avec les « couleurs réelles que » sous-ensemble des données qui relève de la « limite Macadam », ce qui semble signifier la gamme de couleurs qui peuvent effectivement apparaître sur des surfaces réfléchissantes. Le lien de feuille de calcul ne fonctionne pas, cependant, mais sur une intuition que je devine qu'il a laissé à un niveau de l'arborescence. J'ai essayé l'URL http://www.cis.rit.edu/research /mcsl2/online/real_sRGB.xls - et cela a fonctionné. (Je ne serais pas surpris si le propriétaire du site éventuellement le remarque, et fixe le lien, ce qui est susceptible de briser mon lien.)

Je sali avec cette feuille de calcul un peu pour obtenir de générer HTML pour me montrer les couleurs RVB, et a ajouté ces cellules à la feuille de calcul:

<table>
  .<colgroup> <col /> <col span="3" style="background-color:#eeeeee;" /> <col span="3" /> <col span="3" style="background-color:#eeeeee;" /> <col span="3" /> <col span="3" style="background-color:#eeeeee;" /> <col span="3" /> <col style="background-color:#eeeeee;" /> <col /> </colgroup>
  ="<tr> <th> "&A1&" </th> <th> "&B1&" </th> <th> "&C1&" </th> <th> "&D1&" </th> <th> "&E1&" </th> <th> "&F1&" </th> <th> "&G1&" </th> <th> "&H1&" </th> <th> "&I1&" </th> <th> "&J1&" </th> <th> "&K1&" </th> <th> "&L1&" </th> <th> "&M1&" </th> <th> "&N1&" </th> <th> "&O1&" </th> <th> "&P1&" </th> <th> "&Q1&" </th> <th> "&R1&" </th> <th> "&S1&" </th> <th> #RGB </th> <th> sample </th> </tr> "
  ="<tr> <td> "&A2&" </td> <td> "&B2&" </td> <td> "&C2&" </td> <td> "&D2&" </td> <td> "&E2&" </td> <td> "&F2&" </td> <td> "&G2&" </td> <td> "&H2&" </td> <td> "&I2&" </td> <td> "&J2&" </td> <td> "&K2&" </td> <td> "&L2&" </td> <td> "&M2&" </td> <td> "&N2&" </td> <td> "&O2&" </td> <td> "&P2&" </td> <td> "&Q2&" </td> <td> "&R2&" </td> <td> "&S2&" </td> <td> #"&T2&" <td style="&CHAR(34)&"background-color:#"&T2&"; width:2em;"&CHAR(34)&"> &nbsp; </td> </tr> "
  ="<tr> <td> "&A3&" </td> <td> "&B3&" </td> <td> "&C3&" </td> <td> "&D3&" </td> <td> "&E3&" </td> <td> "&F3&" </td> <td> "&G3&" </td> <td> "&H3&" </td> <td> "&I3&" </td> <td> "&J3&" </td> <td> "&K3&" </td> <td> "&L3&" </td> <td> "&M3&" </td> <td> "&N3&" </td> <td> "&O3&" </td> <td> "&P3&" </td> <td> "&Q3&" </td> <td> "&R3&" </td> <td> "&S3&" </td> <td> #"&T3&" <td style="&CHAR(34)&"background-color:#"&T3&"; width:2em;"&CHAR(34)&"> &nbsp; </td> </tr> "
  ="<tr> <td> "&A4&" </td> <td> "&B4&" </td> <td> "&C4&" </td> <td> "&D4&" </td> <td> "&E4&" </td> <td> "&F4&" </td> <td> "&G4&" </td> <td> "&H4&" </td> <td> "&I4&" </td> <td> "&J4&" </td> <td> "&K4&" </td> <td> "&L4&" </td> <td> "&M4&" </td> <td> "&N4&" </td> <td> "&O4&" </td> <td> "&P4&" </td> <td> "&Q4&" </td> <td> "&R4&" </td> <td> "&S4&" </td> <td> #"&T4&" <td style="&CHAR(34)&"background-color:#"&T4&"; width:2em;"&CHAR(34)&"> &nbsp; </td> </tr> "
  .
  .
  .
  ="<tr> <td> "&A1626&" </td> <td> "&B1626&" </td> <td> "&C1626&" </td> <td> "&D1626&" </td> <td> "&E1626&" </td> <td> "&F1626&" </td> <td> "&G1626&" </td> <td> "&H1626&" </td> <td> "&I1626&" </td> <td> "&J1626&" </td> <td> "&K1626&" </td> <td> "&L1626&" </td> <td> "&M1626&" </td> <td> "&N1626&" </td> <td> "&O1626&" </td> <td> "&P1626&" </td> <td> "&Q1626&" </td> <td> "&R1626&" </td> <td> "&S1626&" </td> <td> #"&T1626&" <td style="&CHAR(34)&"background-color:#"&T1626&"; width:2em;"&CHAR(34)&"> &nbsp; </td> </tr> "
</table>

Le tableau a besoin d'une ligne chacun de ceux commençant par A2 à A1626, et une de chacune des autres.

J'espère que cette aide.

En dépit de cet ancien poste, mettre à jour la réponse de Steve, voici « corrigé » des liens vers les référentiels RIT de données Munsell:

https://www.rit.edu/cos/colorscience/rc_munsell_renotation.php

Et un lien direct vers une feuille de calcul du sRGB converti les valeurs des « vraies » couleurs Munsell:

http://www.rit-mcsl.org/MunsellRenotation/real_sRGB.xls

Il est une feuille de calcul qui comprend une conversion de la notation Munsell HVC à xyY, puis à XYZ_C, puis converti en illuminant D65, puis à Virgule flottante sRGB, puis quantifie aux valeurs de 8bit (qu'ils appellent dRGB).

En ce qui concerne la question de l'OP: sRGB est (évidemment) un modèle de couleur RVB additif. Mais les différences par rapport aux autres modèles de couleur tels que CMJN soustractive sont assez complexes qu'un algorithme « simple » ne traitera pas la conversion - alors que les transformations de modèles de couleur peuvent être approchées avec une matrice, on préfère le plus souvent une LUT (Look Up Table), tel qu'un LUT dans un profil ICC ou une LUT 3D tel qu'il est utilisé dans la production de films. (pas tous les profils ICC sont basés LUT, mais ce que la conversion à base de LUT est l'OMI est nécessaire ici).

Les données Munsell tombe certainement dans cette catégorie, comme non seulement un modèle de couleur différente, il est non seulement un modèle soustractif il est basé sur la perception, alors que sRGB est basé sur une relation simple entre le vert rouge et bleu clair.

La feuille de calcul est la consultation table utilisable, donc alors un programme de choses convertir comme votre dossier dentaire sRVB prendrait en ce que les données et faire référence à la LUT contenue dans la feuille de calcul, et renvoient les valeurs sRGB.

Side Note: Je veux parler de clarté que bien que certains couleur espace ou transforme-modèle de couleur peut être fait raisonnablement avec un algorithme / matrice, 3D LUT sont préférés en particulier lorsque les LUT sont créés à partir de données mesurées d'une couleur modèle / espace donné, qui associe les nombreux non-linéarités inhérentes à certains modèles.

Un exemple d'extrême est une image sRGB sur votre écran d'ordinateur vs comment cette image est imprimée sur du papier et apparaît sur la couverture d'un magazine assis sur un kiosque à journaux éclairé avec une lumière fluorescente. Cela exige une LUT 3D pour une transformation précise!

Dans l'industrie du long métrage (où je la plupart du temps de travail) nous utilisons LUT 3D tout au long du pipeline d'image, non seulement pour la conversion / transforme, mais pour « l'affichage » et pour appliquer / émulant « regards. » Par exemple prendre une image prise avec un appareil photo numérique et l'application d'une LUT d'un certain stock de films à cette image pour le faire apparaître comme film.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top