В этом примере показано, как использовать преобразование цветового пространства, чтобы определить, находится ли L*a*b* значение в палитре RGB. Набор цветов, которые могут быть представлены, использовав конкретное цветовое пространство, называется его палитрой. Некоторый L*a*b* значения цвета может быть из палитры, когда преобразовано в RGB.
Преобразуйте L*a*b* значение к RGB. Возвращенные отрицательные значения демонстрируют, что L*a*b* цвет [80 - 130 85] не находится в палитре sRGB цветового пространства, которое является цветовым пространством RGB по умолчанию, использованным lab2rgb
. Цвет RGB вне палитры, когда любое из ее значений компонента меньше 0 или больше, чем 1.
lab = [80 -130 85]; lab2rgb(lab)
ans = 1×3
-0.6209 0.9537 -0.1927
Преобразуйте L*a*b* значение к RGB, на этот раз задав различное цветовое пространство RGB, цветовое пространство Adobe RGB (1998). Adobe RGB (1998) имеет большую палитру, чем sRGB. Используйте 'ColorSpace'
пара "имя-значение". Поскольку выходные значения между 0,0 и 1.0 (содержащие), можно прийти к заключению, что L*a*b* цвет [80 - 130 85] в палитре Adobe RGB (1998).
lab2rgb(lab,'ColorSpace','adobe-rgb-1998')
ans = 1×3
0.1236 0.9522 0.1072