Преобразование изображения RGB в градации серого
преобразует указанное изображение truecolor I = im2gray(RGB)RGB к изображению интенсивности оттенков серого I. im2gray функция принимает изображения в градациях серого в качестве входных данных и возвращает их без изменений.
im2gray функция преобразует изображения RGB в градации серого, устраняя цветовой тон и информацию о насыщении, сохраняя яркость.
im2gray функция идентична rgb2gray за исключением того, что он может принимать изображения в градациях серого в качестве входных данных, возвращая их без изменений. rgb2gray функция возвращает ошибку, если входное изображение является изображением в градациях серого. Если вы используете im2gray функция, код, подобный этому циклу, больше не требуется.
if ndims(I) == 3
I = rgb2gray(I);
end
В отличие от rgb2gray функция, im2gray функция не принимает карты цветов в качестве входных данных. Чтобы преобразовать карту цветов в градации серого, используйте cmap2gray функция.
im2gray функция преобразует RGB-значения в градации серого путем формирования взвешенной суммы компонентов R, G и B:
0.2989 * R + 0.5870 * G + 0.1140 * B
Это те же веса, которые используются rgb2ntsc(Панель инструментов обработки изображений) для вычисления компонента Y.
Коэффициенты, используемые для вычисления значений оттенков серого в im2gray функции идентичны тем, которые используются для вычисления яркости (E 'y) в BT.601-7 Rec.ITU-R после округления до трех десятичных знаков.
Rec.ITU-R BT.601-7 вычисляет E 'y по следующей формуле:
0.299 * R + 0.587 * G + 0.114 * B
cmap2gray | rgb2gray | rgb2ind | ind2gray (Панель инструментов обработки изображений) | mat2gray(Панель инструментов обработки изображений) | ntsc2rgb(Панель инструментов обработки изображений) | rgb2ntsc(Панель инструментов обработки изображений)