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 -by n, когда входные данные о цвете I1 и I2 представляют изображения

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

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

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

Совет

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

Введенный в R2020b
Для просмотра документации необходимо авторизоваться на сайте