hsv2rgb

Преобразование цветов HSV в RGB

Описание

пример

RGB = hsv2rgb(HSV) преобразует значения оттенка, насыщения и значения (HSV) изображения HSV в красные, зеленые и синие значения изображения RGB.

пример

rgbmap = hsv2rgb(hsvmap) преобразует палитру HSV в палитру RGB.

Примеры

свернуть все

Создайте трехколоночную матрицу HSV, которая задает пять оттенков синего цвета. В этом случае оттенок и значение постоянны, в то время как насыщение изменяется между 1.0 и 0.0.

hsv = [.6 1 1; .6 .7 1; .6 .5 1; .6 .3 1; .6 0 1]; 

Преобразуйте матрицу HSV в палитру путем вызова hsv2rgb. Затем используйте эту палитру на объемной поверхностной диаграмме.

rgb = hsv2rgb(hsv);
surf(peaks);
colormap(rgb);
colorbar

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

Создайте массив HSV 2 by2 на 3, который задает четыре оттенка синего цвета.

hsv(:,:,1) = ones(2,2)*.6;
hsv(:,:,2) = [1 .7; .3 0];
hsv(:,:,3) = ones(2,2);

Преобразуйте массив HSV в изображение truecolor с помощью hsv2rgb. Затем отобразите изображение.

rgb = hsv2rgb(hsv);
image(rgb);

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

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

свернуть все

Изображение HSV, заданное как числовой массив m -by- n -by-3 со значениями в области значений [0, 1]. Третья размерность HSV определяет оттенок, насыщение и значение для каждого пикселя, соответственно, как описано в таблице.

ПризнакОписание
ОттенокЗначение от 0 на 1 что соответствует положению цвета на цветном колесе. Когда оттенок увеличивается от 0 на 1, цвет переходит от красного к оранжевому, жёлтому, зеленому, голубому, синему, пурпурному и, наконец, обратно к красному.
НасыщениеКоличество оттенка или отхода от нейтрали. 0 указывает нейтральный оттенок, в то время как 1 указывает на максимальное насыщение.
Значение

Максимальное значение среди красных, зеленых и синих компонентов определенного цвета.

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

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

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

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

свернуть все

Изображение RGB, возвращенное как m -by- n -by-3 числовой массив со значениями в области значений [0, 1]. Третья размерность RGB задает красную, зеленую и синюю интенсивность каждого пикселя, соответственно. Изображение имеет совпадающий тип данных что и изображение HSV, HSV.

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

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

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

Ссылки

[1] Smith, A. R. «Color Gamut Transform Pairs». SIGGRAPH 78 Материалы конференции. 1978, стр 12–19.

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

Генерация кода C/C + +
Сгенерируйте код C и C++ с помощью Coder™ MATLAB ®

.

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

.

См. также

|

Представлено до R2006a