exponenta event banner

deltaE

Цветовые различия, основанные на стандарте CIE76

Описание

пример

dE = deltaE(I1,I2) вычисляет цветовую разницу между двумя RGB-изображениями или наборами цветов с использованием стандарта CIE76.

пример

dE = deltaE(I1,I2,'isInputLab',isLab) также указывает, находятся ли входные цветовые данные в цветовом пространстве RGB или в цветовом пространстве L * a * b *.

Примеры

свернуть все

Укажите два значения цвета RGB.

pureRed = uint8([255 0 0]);
darkRed = uint8([255 10 50]);

Рассчитайте цветовую разницу цветов.

dE = deltaE(pureRed,darkRed)
dE = single
    18.6206

Считывание цветного изображения в рабочую область.

I1 = imread('peppers.png');
imshow(I1)

Figure contains an axes. The axes contains an object of type image.

Изменение локального цветового контраста изображения.

I2 = localcontrast(I1);
imshow(I2)

Figure contains an axes. The axes contains an object of type image.

Рассчитайте цветовую разницу изображений.

dE = deltaE(I1,I2);

Отображение цветовой разницы в виде изображения. Максимальное значение dE превышает диапазон [0, 1], ожидаемый для изображений типа данных single, таким образом, отображение изображения с использованием полного диапазона отображения данных. Яркие пиксели указывают на большую цветовую разницу и, следовательно, на большую степень контрастности.

imshow(dE,[])

Figure contains an axes. The axes contains an object of type image.

Считывайте и отображайте изображение ткани, окрашенной гемотоксилином и эозином (H&E).

he = imread('hestain.png');
imshow(he)

Figure contains an axes. The axes contains an object of type image.

Преобразуйте изображение в цветовое пространство L * a * b *.

lab = rgb2lab(he);

Сделайте копию изображения, а затем увеличьте сигнал канала a *. Красные тона на изображении становятся более насыщенными, в то время как общая яркость изображения и синие тона остаются неизменными.

lab2 = lab;
scaleFactor = 1.2;
lab2(:,:,2) = scaleFactor*lab(:,:,2);

Рассчитайте цветовую разницу исходного и улучшенного изображения в цветовом пространстве L * a * b *.

dE = imcolordiff(lab,lab2,'isInputLab',true);

Отображение цветовой разницы в виде изображения. Масштабирование диапазона отображения в соответствии с диапазоном значений пикселей в dE. Яркие области указывают на наибольшую цветовую разницу и соответствуют розовым областям ткани.

imshow(dE,[])

Figure contains an axes. The axes contains an object of type image.

Входные аргументы

свернуть все

Первый набор цветовых данных, заданный как числовой массив m-by-n-by-3, представляющий изображение, или числовая матрица c-by-3, представляющая набор c цветов. I1 и I2 должен иметь одинаковый размер со значениями в том же цветовом пространстве.

По умолчанию deltaE функция интерпретирует цветовые данные как цветовые значения RGB. Чтобы вычислить цветовую разницу в цветовом пространстве L * a * b *, укажитеisLab аргумент как true. Значения цвета L * a * b * могут иметь тип данныхsingle или double только.

Типы данных: single | double | uint8 | uint16

Второй набор цветовых данных, заданный как числовой массив m-by-n-by-3, представляющий изображение, или числовая матрица c-by-3, представляющая набор c цветов. I1 и I2 должен иметь одинаковый размер со значениями в том же цветовом пространстве.

По умолчанию deltaE функция интерпретирует цветовые данные как цветовые значения RGB. Чтобы вычислить цветовую разницу в цветовом пространстве L * a * b *, укажитеisLab аргумент как true. Значения цвета L * a * b * могут иметь тип данныхsingle или double только.

Типы данных: single | double | uint8 | uint16

Значения цвета находятся в цветовом пространстве L * a * b *, указанном как числовое или логическое0 (false) или 1 (true)..

Выходные аргументы

свернуть все

Цветовое различие (дельта E), возвращаемое как одно из следующих значений.

  • Матрица m-на-n, когда входные цветовые данные I1 и I2 представлять изображения

  • Вектор столбца c-элемента при I1 и I2 представляют набор цветов c

Если I1 или I2 имеет тип данных double, то dE имеет тип данных double. В противном случае dE имеет тип данных single.

Типы данных: single | double

Совет

  • Для повышения точности расчета цветовых различий используйте imcolordiff функция. Эта функция следует стандартам CIE94 и CIEDE2000 и предлагает параметры для улучшения однородности восприятия для различных применений.

Представлен в R2020b