Теория цвета: как конвертировать Munsell HVC в RGB / HSB / HSL

StackOverflow https://stackoverflow.com/questions/3620663

Вопрос

Я смотрю на документ, который описывает стандартные цвета, используемые в стоматологии, чтобы описать цвет зуба. Они цитируют оттенок, стоимость, хрома Значения и указывают, что они находятся из Munsell 1905 Munsell о цвете:

Система цвета обозначения, разработанная AH Munsell в 1905 году, идентифицирует цвет с точки зрения трех атрибутов: оттенок, значение (яркость) и хрома (насыщенность) [15]

Hue (h): Munsell определил оттенок как качество, которым мы различаем один цвет от другого. Он выбрал пять принцип цветов: красный, желтый, зеленый, синий и фиолетовый; и пять промежуточных цветов: желто-красный, зелено-желтый, сине-зеленый, пурпурный синий и красно-фиолетовый. Они были размещены вокруг цветного круга на равных точках, а цвета между этими точками представляют собой смесь двух, в пользу ближе к точке / цвета (см. Рис. 1.).

alt text

Значение (v): эта запись указывает на легкость или тьму цвета по отношению к нейтральной серой шкале, которая проходит от абсолютного черного (символ значения 0) на абсолютный белый (символ значения 10). Это, по сути, насколько «яркий» цвет есть.

Chroma (C): Это указывает на степень расхождения данного оттенка от нейтрального серого одинакового значения. Масштаб Chroma простирается от 0 для нейтрального серого до 10, 12, 14 или дальше, в зависимости от прочности (насыщенности) образца для оценки.

Существуют различные системы для категоризации цвета, система VITA чаще всего используется в стоматологии. Это использует буквы A, B, C и D, чтобы отменить оттенок (цвет) зуба. Хрома и ценность обозначены значением от 1 до 4. A1, быть легче, чем A4, но A4 - более насыщено, чем A1. Если размещен в порядке ценности, то есть яркости, порядок из самых ярких до темных будет:

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

Точные значения оттенка, значения и хромы для каждой из оттенков показаны ниже (16)

alt text

Итак, мой вопрос, может кто-нибудь конвертировать Munsell HVC в RGB, HSB или 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

Говорят, что значение (яркость) варьируется от 0..10, что в порядке. Поэтому я беру 7,05, чтобы означать 70,5%.

Но что такое Hue измеряется в? я привык оттенок измеряется внутри degrees (0..360). Но ценности, которые я вижу, все будет красным - когда они должны быть более желтыми или коричневыми.

Наконец, он говорит, что Choma / насыщенность может варьироваться от 0..10 ...или даже выше - что делает это звучать как произвольная шкала.

Так может кто-нибудь может преобразовать Munsell HVC в HSB или HSL или еще лучше, RGB?

Это было полезно?

Решение

Спецификация оттенка, которую вы дали здесь, является неполной (4.5 должно быть 4.5Y. так далее). Поскольку ссылка мертва, если кто-то интересно, спецификации все еще живы здесь:http://web.archive.org/web/20071103065312/http://lib.umich.edu/dentlib/dental_table/colorshadguid.html.

Единственная бесплатная утилита для преобразования Munsell я мог найти, было это:

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

Очень старый, как видно, но, кажется, хорошо работает. Текущие программы, которые могут сделать это, не являются бесплатными:

Нынешние держатели продуктов Munsell X-Rite., Они, вероятно, также имеют некоторые решения для преобразования.

Кроме того, обратите внимание, что прилагаемая вами ссылка включает определения для тех же цветов в других цветовых координатах - а именно yxy и cie lа.B *. Оба могут быть свободно преобразованы онлайн в http://www.colorpro.com/info/tools/convert.htm. или офлайн с этим Бесплатный цветной преобразователь

Другие советы

Это скорее вовлечено. Короткий ответ, Преобразование Munsell Codes в RGB включает в себя интерполяцию эмпирических данных в 3D, которые очень нелинейны. Единственный набор данных, который является общедоступным, было собрано в 1930-х годах. Бесплатные или недорогие программы, которые я обнаружил в сети, оказались ошибочными. Я написал свой собственный. Но я прыгаю вперед. Давайте начнем с основы.

Коды Munsell отличаются в натуральной форме, чем те другие коды, Xyy, Lab и RGB. Обозначение Munsell описывает цвет объект - Какие люди испытывают, когда они рассматривают объект. (Исаак Ньютон был первым, кто поделился, что цвет находится в глазах смотрящего.) Мунселл провел обширные эксперименты с человеческими предметами и гениальными устройствами.

Другие коды, то есть Xyy, Lа.B *, а RGB, опишите свет Это отскочило от объекта и проходило через сверкулью с довольно простой математической моделью человеческого глаза. Некоторые Google-термины являются «осветительными», «три-стимул» и «стандартным наблюдателем CIE».

Munsell описывает цвета объектов, поскольку они воспринимаются под самым разнообразием осветителей. Другой Google-термин - это «хроматическая адаптация». Хроматическая адаптация в мозге автоматическая, если освещение не слишком странно. Это действительно довольно замечательно. Возьмите кусок печатания бумаги снаружи под голубым небом. Бумага выглядит белой. Возьмите его в помещении и посмотрите на него на лампах накаливания (желтоватые). Это все еще выглядит белым! Munsell постучал в эту удивительную мощность обработки эмпирически. Коды Munsell также сохраняют воспринимаемый оттенок на разных хромах. Небесно-синий и синий порошок, который Munsell назначает одинаковую запись оттенка, например, 5RP, появится типичному человеку с нормальным зрением, чтобы быть тем же оттенком. Больше на этом в сноске.

CIE XYY, Lа.B *, и RGB ничего не значат, если не указан осветитель. Хроматическая адаптация для осветителей в математической модели вычислительно сложно. (Грубые, но простые приближения могут быть сделаны с использованием «матриц Брэдфорда») RGB, который мы используем по умолчанию «SRGB», который указывает подсветку под названием D65. D65 - что-то вроде безоблачного дня в полдень. Лабораторные номера, перечисленные OP, вероятно, относятся к D50, что больше похоже на полдень или утренний свет. Числа Xyy могут быть относительно D50, или они могут быть относительными к старому стандарту, называемую C. Я не собираюсь проверять. C Был светом из стандартного осветительного приспособления, который был относительно недорогим, чтобы построить в 1930-х годах. Это устарело. Но C играет ключевую роль в ответе на вопрос.

В 1930-х годах цветные ученые разрабатывали математические модели. Одна из вещей, которые они делали, было предпринять стандартную книгу COLOR MUNSELL, светить освещать свет на цветных чипсах в книге и записывать данные в формате XYY. Этот набор данных, называемый «Данными резонации Munsell», является единственным, который свободно доступен. Другие, безусловно, существуют, но они тесно проводятся секреты.

Хорошие новости, хотя. Набор данных работает хорошо. Власть Munsell сегодня является компания под названием Gretag Macbeth. Я представляю, что у них есть объемные данные, связанные с цветными чипсами, которые они продают. Единственные номера, которые я знаю, о том, они публикуют, являются лабораториями D50 и номера D65 SRGB для небольшого набора цветов на их "Color Checker" карты. Я написал интерполятор на основе старых данных ретора. Он согласен с числами для Color Checker Card почти точно. Я сожалею, что сообщаю, что до сих пор у меня только письменный код для преобразования, который идет противоположное направление от того, что запросил OP (год назад, как я ввожу этот). Он идет от SRGB в Munsell. Я нажав на изображение, и программа отображает обозначения SRGB и Munsell для области, нажав на. Я использую его для масляной живописи.

My

Сноска: CIE имеет стандарт, который аналогичен Munsell. Это называется LCH подписан с a, b. Это Л.а.B * в полярных координатах. Оттенки в градусах. Числа Chroma примерно в 5 раз в C в Munsell HVC. У ЛКХ есть свои проблемы, хотя. Если вы когда-либо использовали фоторедактор для накачки яркости неба, только чтобы увидеть синий поворот к фиолетовому, программа, вероятно, использовала LCH. Когда я начал писать мою программу, я не знал, что Брюс Линдлоум сделал работу, которая параллельна тому, что я делал. Его веб-сайт был неоценен для меня, когда я закончил проект. Он спроектировал пространство, которое он называет uplab, который выпрямился, чтобы выровнять с Munsell. Я уже повторно изобрел LCH и (по сути) uflab, прежде чем я обнаружил сайт мистера Линлума, но его знание предмета далеко превышает мой.

Система ретонарной системы Munsell для преобразования CRGB Colourspace

Цвет, Наш пакет Pypton Pyston Pyston Picton Picton позволяет выполнять это преобразование.

Из системы ретонарной системы Munsell до CIE Xyy Colourspace

Следующие два определения на основе метода Центровая (2012) преобразуются между Система ретонарной системы Munsell а также CIE XYY. Colourspace:

От Cie Xyy Colourspace в CORGB Colourpace

Преобразование от CIE XYY. ColourSpace SRGB. Colourspace выполняется первым преобразованием в CIE XYZ. ценности тритимуля, а затем SRGB. ColourSpace с использованием следующих определений:

Реализация

Вот аннотированный полный пример, используя вышеуказанные определения:

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]

Вы также можете выполнить обратное преобразование из SRGB. ColourSpace Система ретонарной системы Munsell:

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,250 8,1 / 5.3

использованная литература

  • Центр, П. (2012). Алгоритм инверсии с открытым исходным кодом для резонации Munsell. Цветные исследования и приложение, 37 (6), 455-464. DOI: 10.1002 / COLF20715

Для полноты, вот версия моей страницы Archive.org, которая содержит цвета в 3 цвета пространства, Munsell, Yxy и 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

использованная литература

  • 151 О'Брайен, WJ, GROH, CL и Boenke, Km Новое, уравнение небольшого цвета для стоматологических оттенков. J.dent. Реша 69: 1762-1764, 1990.
  • 152 О'Брайен, WJ, GROH, CL и BOENKE, KM неопубликованные данные. Университет Мичиганской школы стоматологии, Энн Арбор.

Есть бесплатный R пакет munsell который будет (среди прочего) конвертировать Munsell Codes в RGB:

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

Здесь я нашел страницу: munsell-to-rgb.blogspot.com. Это, кажется, делает именно то, что вы после. На данный момент кажется незавершенным, но владелец блога планирует регулярно обновлять его как можно большему количеству преобразований Munsell-RGB, как он может (и он принимает запросы!).

Удивительно, насколько усердно найти доступные конверсионные столы для этих цветовых систем; Надеюсь, это будет наш ответ! : D.

Я опоздал на вечеринку, но я нашел другой ресурс, который может быть полезен на этой теме.

Кто-то в «Лаборатории цветной науки Munsell» выкопал около 1943 года из Munsell, все на основе исследований Munsell 1930-х годов: http://www.cis.rit.edu/research/mcsl2/online/munsell.php.php.

Страница относится к электронной таблице Excel с «реальными цветами» только «подмножеством данных, которые падают в рамках« предела MACADAM », что, по-видимому, означают гамму цветов, которые могут на самом деле появляться на отражательных поверхностях. Однако ссылка на электронную таблицу не работает, но на дому я догадался, что он оставил один уровень дерева каталогов. Я попробовал URL http://www.cis.rit.edu/research/mcsl2/online/real_srgb.xls. - И это сработало. (Я бы не удивлен, если владелец сайта в конечном итоге замечает его и исправляет ссылку, которая, вероятно, сломает мою ссылку.)

Я немного испортил эту электронную таблицу, чтобы получить его для создания HTML, чтобы показать мне цвета RGB и добавили эти ячейки к электронной таблице:

<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>

Таблица нужна одна строка, каждый из которых начинается с A2 до A1626, и один из остальных.

Надеюсь, это поможет.

Несмотря на этот старый пост, чтобы обновить ответ Стива, вот «исправлены» ссылки на репозитории RIT Munsell Data:

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

И прямая ссылка на электронную таблицу SRGB преобразованных значений «реальных» цветов Munsell:

http://www.rit-mcsl.org/munsellronotation/real_srgb.xls.

Это электронная таблица, которая включает в себя конверсию от обозначения MUNSELL HVC в Xyy, затем к XYZ_C, затем преобразован в подсветку D65, затем в плавающую точку SRGB, затем квантоваться до 8-битных значений SRGB (которые они называют DRGB).

Что касается вопросов ОП: SRGB (очевидно) модель добавки RGB. Но различия к другим цветовым моделям, таким как субтрактивные CMYK, достаточно сложны, что «простой» алгоритм не будет обрабатывать преобразование - в то время как преобразования цвета модели могут быть аппроксимированы с помощью матрицы, чаще всего LUT (посмотреть таблицу), Такие, как LUT в профиле ICC или 3D LUT, как используется в кинопроизводстве. (Не все профили ICC основаны на основе LUT, но преобразование на основе LUT IMO - это то, что нужно здесь).

Данные Munsell, безусловно, попадают в эту категорию, так как не только это другая цветная модель, это не только субтрактивная модель, основанная на восприятии, в то время как SRGB основан на простой связи между красным зеленым и синим светом.

Электронная таблица - это используемая натуральная запись, поэтому программа для преобразования таких вещей, как ваша стоматологическая графика в SRGB, потребуется в этих данных и ссылается на LUT, содержащуюся в таблице, и возвращает значения SRGB.

Примечание: Я хочу упомянуть о ясности, что хотя немного Color-Space или Color-модельные преобразования могут быть сделаны разумно с алгоритмом / матрицей, 3D LUTs предпочтительными, особенно когда луки создаются из Измеренные данные данной цветовой модели / пространства, который отображает многие нелинейности, присущие некоторым моделям.

Экстремальный пример - это изображение SRGB на вашем компьютере мониторинга против того, как это изображение напечатано на бумаге и появляется на крышке журнала, сидящего на газете, освещенную цветущим светом. Это требует 3D LUT для точного преобразования!

В художественной киноиндустрии (где я в основном работаю) мы используем 3D LUT на протяжении всего трубопровода изображения, а не только для преобразования / преобразований, но для «просмотра» и для применения / эмуляции «выглядит». Например, снимая изображение с помощью цифровой камеры и нанесите LUT определенной пленки на это изображение, чтобы она появилась как фильм.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top