rgb2gray

Преобразуйте изображение RGB или палитру в полутоновые

Описание

пример

I = rgb2gray(RGB) преобразует изображение truecolor RGB к полутоновому изображению I. The rgb2gray функция преобразует изображения RGB в полутоновые путем удаления информации о цвете и насыщении с сохранением яркости. Если у вас установлен Parallel Computing Toolbox™, rgb2gray может выполнить это преобразование на графическом процессоре.

пример

newmap = rgb2gray(map) возвращает полутоновую палитру, эквивалентную map.

Примеры

свернуть все

Чтение и отображение изображения RGB, а затем преобразование его в полутоновый.

Прочтите образец файла, peppers.png, и отобразить изображение RGB.

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

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

Преобразуйте изображение RGB в полутоновое изображение и отобразите его.

I = rgb2gray(RGB);
figure
imshow(I)

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

Чтение индексированного изображения с помощью палитры RGB. Затем преобразуйте палитру в полутоновую.

Прочтите образец файла, corn.tif, которое является индексированным изображением с палитрой RGB.

[X,map] = imread('corn.tif');

Отобразите изображение.

imshow(X,map)

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

Преобразуйте палитру RGB в палитру полутонового цвета и повторно отобразите изображение.

newmap = rgb2gray(map);
imshow(X,newmap)

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

Входные параметры

свернуть все

Изображение Труколора, заданное как m -by- n -by-3 числовой массив.

Если у вас установлен Parallel Computing Toolbox, RGB может также быть gpuArray.

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

Палитра, заданная как c-на-3 числовая матрица со значениями в области значений [0, 1]. Каждая строка map - трехэлементный триплет RGB, который задает красный, зеленый и синий компоненты одного цвета палитры.

Если у вас установлен Parallel Computing Toolbox, map может также быть gpuArray.

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

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

свернуть все

Полутоновое изображение, возвращенное как m -by n числовой массив.

Если у вас установлен Parallel Computing Toolbox, то I может также быть gpuArray.

Палитра полутонового цвета, возвращенная как c-на-3 числовая матрица со значениями в области значений [0, 1]. Три столбца newmap идентичны, так что каждая строка map задает одно значение интенсивности.

Если у вас установлен Parallel Computing Toolbox, то newmap может также быть gpuArray.

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

Совет

  • rgb2gray поддерживает генерацию Кода С с помощью MATLAB® Coder™.

Алгоритмы

rgb2gray преобразует значения RGB в значения в полутоновом цвете путем формирования взвешенной суммы R, G и B компонентов:

0.2989 * R + 0.5870 * G + 0.1140 * B 

Это те же веса, которые используются rgb2ntsc (Image Processing Toolbox) функция для вычисления компонента Y.

Коэффициенты, используемые для вычисления значений в полутоне в rgb2gray идентичны тем, которые используются для вычисления яркости (E 'y) в BT.601-7 Rec.ITU-R после округления до 3 десятичных знаков.

Rec.ITU-R BT.601-7 вычисляет E 'y с помощью следующей формулы:

0.299 * R + 0.587 * G + 0.114 * B

Расширенные возможности

.

Генерация кода GPU
Сгенерируйте код CUDA ® для графических процессоров NVIDIA ® с помощью GPU Coder™

.

См. также

| (Image Processing Toolbox) | (Набор Image Processing Toolbox) | (Набор Image Processing Toolbox) | (Набор Image Processing Toolbox)