exponenta event banner

rgb2xyz

Преобразовать RGB в CIE 1931 XYZ

Описание

XYZ = rgb2xyz(RGB) преобразует значения красного, зеленого и синего цветов изображения sRGB в значения XYZ CIE 1931 (2 ° наблюдателя).

пример

XYZ = rgb2xyz(RGB,Name,Value) задает дополнительные параметры преобразования, такие как цветовое пространство изображения RGB, с использованием одного или нескольких аргументов пары имя-значение.

Примеры

свернуть все

Преобразование изображений и цветовых значений из RGB в цветовое пространство CIE 1931 XYZ.

Преобразовать изображение RGB в XYZ

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

RGB = imread('peppers.png');

Преобразуйте изображение в цветовое пространство XYZ.

XYZ = rgb2xyz(RGB);

Отображение исходного изображения рядом с новым изображением.

figure
imshowpair(RGB,XYZ,'montage');
title('Image in RGB Color Space (Left) and XYZ Color Space (Right)');

Figure contains an axes. The axes with title Image in RGB Color Space (Left) and XYZ Color Space (Right) contains an object of type image.

Преобразовать значение цвета RGB в XYZ

Преобразование значения белого из RGB в цветовое пространство XYZ. В RGB белый цвет представлен вектором [1 1 1].

rgb2xyz([1 1 1])
ans = 1×3

    0.9505    1.0000    1.0888

Преобразование цвета RGB в XYZ с использованием D50 в качестве ссылочного белого

XYZ_D50 = rgb2xyz(RGB,'WhitePoint','d50');

Отобразите первое выходное XYZ-изображение рядом с XYZ-изображением с D50 в качестве ссылки белым цветом.

figure
imshowpair(XYZ,XYZ_D50,'montage');
title('XYZ Image, Without (Left) and With (Right) Reference White');

Figure contains an axes. The axes with title XYZ Image, Without (Left) and With (Right) Reference White contains an object of type image.

Преобразование цвета Adobe RGB (1998) в XYZ

XYZ_Adobe = rgb2xyz(RGB,'ColorSpace','adobe-rgb-1998');

Отображение изображений XYZ, созданных из цветовых пространств RGB и Adobe RGB (1998) по умолчанию.

figure
imshowpair(XYZ,XYZ_Adobe,'montage');
title(['XYZ Image, Starting From Default RGB (Left) and Adobe RGB ',...
  '(Right) Color Space']);

Figure contains an axes. The axes with title XYZ Image, Starting From Default RGB (Left) and Adobe RGB (Right) Color Space contains an object of type image.

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

свернуть все

RGB-значения цвета для преобразования, заданные как числовой массив в одном из этих форматов.

  • c-by-3 цветовая карта. В каждой строке указывается одно значение цвета RGB.

  • Изображение m-by-n-by-3

  • m-by-n-by-3-by-p стека изображений

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

Аргументы пары «имя-значение»

Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

Пример: rgb2xyz([.2 .3 .4],'WhitePoint','d50')

Цветовое пространство входных значений RGB, указанное как разделенная запятыми пара, состоящая из 'ColorSpace' и один из 'srgb', 'adobe-rgb-1998', или 'linear-rgb'. При указании 'linear-rgb', то rgb2xyz предполагает, что входные значения RGB являются линеаризованными значениями sRGB.

Типы данных: char

Опорная белая точка, указанная как разделенная запятыми пара, состоящая из 'WhitePoint' и вектор 1 на 3 или один из стандартных осветителей CIE, перечисленных в таблице.

СтоимостьБелая точка
'a'

Стандартный светильник A КИПиИ, [1.0985, 1.0000, 0.3558]. Имитирует типичное, бытовое, вольфрамово-нитевое освещение с коррелированной цветовой температурой 2856 К. 

'c'Стандартный осветитель CIE C, [0.9807, 1.0000, 1.1822]. Имитирует средний дневной свет или дневной свет северного неба с коррелированной цветовой температурой 6774 К. Обесценивается CIE.
'e'Излучатель равной энергии, [1.000, 1.000, 1.000]. Полезно в качестве теоретической справки.
'd50'Стандартный осветительный D50 КИПиИ, [0.9642, 1.0000, 0.8251]. Имитирует теплый дневной свет на восходе или закате с коррелированной цветовой температурой 5003 К. Также известен как горизонтальный свет.

'd55'

Стандартный осветительный D55 КИПиИ, [0.9568, 1.0000, 0.9214]. Имитирует дневной свет в середине утра или в середине дня с коррелированной цветовой температурой 5500 К.  

'd65'Стандартный осветительный D65 КИПиИ, [0.9504, 1.0000, 1.0888]. Моделирует полдень дневного света с коррелированной цветовой температурой 6504 К. 
'icc'Освещение пространства подключения профиля (PCS), используемое в профилях ICC. Аппроксимация [0.9642, 1.000, 0.8249] с использованием чисел с фиксированной точкой, со знаком, 32-разрядных чисел с 16 дробными битами. Фактическое значение: [31595,32768, 27030]/32768.

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

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

свернуть все

Преобразованные значения цвета XYZ, возвращаемые в виде числового массива того же размера, что и входные значения. Тип вывода - класс double если только тип ввода не single, в этом случае тип вывода также single.

Совет

  • Если указано входное цветовое пространство RGB как 'linear-rgb', то rgb2xyz предполагает, что входные значения являются линеаризованными значениями sRGB. Если вместо этого необходимо, чтобы входное цветовое пространство было линеаризовано Adobe RGB (1998), то можно использовать lin2rgb функция.

    Например, для преобразования линеаризованного изображения Adobe RGB (1998) RGBlinadobe в цветовое пространство CIE 1931 XYZ выполните преобразование в два этапа:

    RGBadobe = lin2rgb(RGBlinadobe,'ColorSpace','adobe-rgb-1998');
    XYZ = rgb2xyz(RGBadobe,'ColorSpace','adobe-rgb-1998');
    
Представлен в R2014b