В этом примере показано, как вычислить цветовую разность измеренных и ссылочных цветов с помощью стандарта CIE94. По умолчанию, measureColor функция вычисляет цветовую разность между измеренными и ссылочными цветами на тестовом графике с помощью стандарта CIE76. Можно использовать imcolordiff функция, чтобы вычислить цветовую разность с помощью CIE94 или стандарта CIEDE2000.
Считайте изображение графика X-Rite® ColorChecker® в рабочую область.
I = imread('colorCheckerTestImage.jpg');Создайте colorChecker возразите затем отображают график с аннотациями ROI.
chart = colorChecker(I); displayChart(chart)

Измерьте цвет в каждом ROI цветового поля и возвратите измерения в таблице, colorTable. Измерения цветового различия в Delta_E переменная таблицы следует стандарту CIE76.
colorTable = measureColor(chart);
На схеме цветового поля отобразите измеренные и ссылочные цвета с соответствующим цветовым различием CIE76, наложенным на каждую закрашенную фигуру.
displayColorPatch(colorTable)

Извлеките ссылочный L*a*b* и измеренные значения цвета RGB в таблицу.
referenceLab = colorTable{:,{'Reference_L','Reference_a','Reference_b'}};
measuredRGB = colorTable{:,{'Measured_R','Measured_G','Measured_B'}};Преобразуйте измеренные цвета RGB в L*a*b* цветовое пространство, задав белую точку D50.
measuredLab = rgb2lab(measuredRGB,"WhitePoint","d50");
Вычислите цветовую разность с помощью imcolordiff функция, указывая, что цветные измерения находятся в L*a*b* цветовое пространство. По умолчанию эта функция вычисляет цветовые разности с помощью стандарта CIE94.
dE = imcolordiff(measuredLab,referenceLab,"isInputLab",true);Составьте новую таблицу цветов с помощью новых измерений цветового различия.
colorTable94 = colorTable;
colorTable94{:,"Delta_E"} = dE;На схеме цветового поля отобразите измеренные и ссылочные цвета с соответствующим цветовым различием CIE94, наложенным на каждую закрашенную фигуру.
displayColorPatch(colorTable94)

deltaE | imcolordiff | rgb2lab | displayChart | displayColorPatch | plotChromaticity