Цветовой конвертер LCh, Lab, RGB, hex, XYZ, xyY, CMYK, Pantone

mihas

Топикстартер
15 лет на форуме
Сообщения
4 860
Реакции
2 872
Разошлись с Брюсом Линдблумом на 4% в расчете объема Lab Gamut или Human Visual Space Gamut Volume: у меня объем HVS - 2482998 ΔE³, у Брюса - 2381085 ΔE³. RGB Working Space Information Брюс свои расчеты не выкладывает, зато любознательные могут посмотреть содержимое моего файла C I E L a b . X Y Z • HVS surface LCh to CGATS правой кнопкой Просмотр кода страницы - там увидите пониже мои функции вычисления площади фигуры с 360 вершинами Gamut_Area(a,b) и полностью объема трехмерной фигуры Gamut_Volume() из ста срезов по L. То есть класть фигуру конской головы HVS в воду и измерять объем вытесненной жидкости не пришлось!-)
HVS_Gamut_Volume.PNG
Если встречали где-то кроме Линдблума величину объема HVS - дайте знать. Сверить часы.
Прописал некоторые сведения о цветовых моделях простым языком C I E L a b . X Y Z • Цветовой конвертер онлайн , кого заинтересуют подробности - полезут в энциклопедию. Какая-то короткая аннотация к моделям все равно нужна. Если есть соображения что исправить - пишите, одна голова хорошо, а много - тоже бывает полезно.
 
  • Спасибо
Реакции: Petruccio и f1ai

mihas

Топикстартер
15 лет на форуме
Сообщения
4 860
Реакции
2 872
По просчитанной мной таблице поверхности HVS нормально можно визуализировать эту поверхность:
Но что-то шариков для точек не нашел где выставить, раньше вроде были, а теперь кубики.
 

Вложения

  • CIELab_HVS_Surface_1_1.png
    CIELab_HVS_Surface_1_1.png
    2.5 МБ · Просм.: 492
Последнее редактирование:

mihas

Топикстартер
15 лет на форуме
Сообщения
4 860
Реакции
2 872
Пока остановился на таком gamut-mapping - в нем насыщенность максимальная, мне больше всего так нравится.
TwoDimensionalTaylor.png
Если кому любопытно - координаты x4y4 пересечения перпендикуляра с отрезком CLmin-CLmax ищутся по такой формуле:
Код:
var x4=((x2-x1)*(y2-y1)*(y3-y1)+x1*Math.pow(y2-y1, 2)+x3*Math.pow(x2-x1, 2))/(Math.pow(y2-y1, 2)+Math.pow(x2-x1, 2));
var y4=(y2-y1)*(x4-x1)/(x2-x1)+y1;
где x1y1 = начало отрезка, x2y2 - конец отрезка, x3y3 - координаты CL точки за охватом модели.
 
Последнее редактирование:
  • Спасибо
Реакции: colorprint и f1ai

mihas

Топикстартер
15 лет на форуме
Сообщения
4 860
Реакции
2 872
Добавил в конвертер библиотеки RAL Classic, RAL Design, RAL Effect. На очереди NCS.

Источник данных Lab вызывает сомнения. Они определили, что Lab у них D65. При этом считают так, как будто он D50:
Lab D50 -> BradfordCHAD -> sRGB D65

Тем не менее, если лаб действительно D65 - из формулы просто надо убрать хромадаптацию Брэдфорда, она не нужна при переходе Lab D65 -> sRGB D65

Если у вас есть надежные данные по цвету RAL - поделитесь, чтобы сравнить. В сети надежных нету и самое осмысленное как раз по ссылке, но и там ошибка. Мне бы получить лабы RAL из другого источника для голубых например оттенков чтобы понять - имею я дело с D65 действительно и ошибкой расчетов, или они ошибочно Lab D50 назвали D65.
 

Вложения

  • conv.png
    conv.png
    54.6 КБ · Просм.: 315
  • Спасибо
Реакции: colorprint и izrukvruki

mihas

Топикстартер
15 лет на форуме
Сообщения
4 860
Реакции
2 872
Сравнил с лабами отсюда из программы RAL DIGITAL 5.0
Да все точно совпадает и все D65. Так что учел это
 

Вложения

  • 91841843_735121937024777_3446728817161273344_n.png
    91841843_735121937024777_3446728817161273344_n.png
    236.3 КБ · Просм.: 281
  • 92436974_511796196161982_1383325287193772032_n.png
    92436974_511796196161982_1383325287193772032_n.png
    41.3 КБ · Просм.: 282
  • alert1.png
    alert1.png
    11.8 КБ · Просм.: 309

mihas

Топикстартер
15 лет на форуме
Сообщения
4 860
Реакции
2 872
Еще посмотрел все-таки и с точки зрения пользователя, и с точки зрения математики - удобно когда оперируешь истинными цифрами RGB, даже если они отрицательные. Просто визуализируешь с гамут-маппингом, а нетронутые значения так же хранишь. И обратно можно перейти в другие модели без изменений, и отрицательное значение сразу показывает где собственно вылет за охват модели.
 

Вложения

  • raldes.png
    raldes.png
    507 КБ · Просм.: 533
  • Спасибо
Реакции: colorprint

mihas

Топикстартер
15 лет на форуме
Сообщения
4 860
Реакции
2 872
Добавил внизу палитры, подобранные по светлоте, насыщенности или оттенку. Мне не хватало раньше такого удобного подбора гармоничных цветов при веб-дизайне.
 

Вложения

  • harmony.png
    harmony.png
    505.6 КБ · Просм.: 417

mihas

Топикстартер
15 лет на форуме
Сообщения
4 860
Реакции
2 872
Стало проще стало делиться результатом - клик по надписи Report рядом с LCh
 

Вложения

  • Annotation 2020-04-24 235708.png
    Annotation 2020-04-24 235708.png
    285.3 КБ · Просм.: 304
  • Спасибо
Реакции: dumbm1