rgb2hsv

Преобразуйте цвета RGB в HSV

Синтаксис

HSV = rgb2hsv(RGB)
hsvmap = rgb2hsv(rgbmap)

Описание

пример

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

пример

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

Примеры

свернуть все

Получите субдискретизируемую версию палитры prism.

rgb = prism(6)
rgb = 6×3

    1.0000         0         0
    1.0000    0.5000         0
    1.0000    1.0000         0
         0    1.0000         0
         0         0    1.0000
    0.6667         0    1.0000

Преобразуйте значения RGB в палитре к HSV.

hsv = rgb2hsv(rgb)
hsv = 6×3

         0    1.0000    1.0000
    0.0833    1.0000    1.0000
    0.1667    1.0000    1.0000
    0.3333    1.0000    1.0000
    0.6667    1.0000    1.0000
    0.7778    1.0000    1.0000

Создайте изображение истинного цвета 2 на 2.

rgb(:,:,1) = [1 1; 0 .5];
rgb(:,:,2) = [0 1; 0 .5];
rgb(:,:,3) = [0 0; 1 .5];
image(rgb);

Преобразуйте изображение в массив HSV.

hsv = rgb2hsv(rgb)
hsv = 
hsv(:,:,1) =

         0    0.1667
    0.6667         0


hsv(:,:,2) =

     1     1
     1     0


hsv(:,:,3) =

    1.0000    1.0000
    1.0000    0.5000

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

свернуть все

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

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

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

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

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

свернуть все

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

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

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

Тип данных HSV зависит от типа RGB:

  • Если RGB имеет тип single, то HSV имеет тип single.

  • В противном случае HSV имеет тип double.

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

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

Тип данных зависит от типа rgbmap:

  • Если rgbmap имеет тип single, то hsvmap имеет тип single.

  • В противном случае hsvmap имеет тип double.

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

Ссылки

[1] Смит, A. R. “Пары Преобразования Цветового охвата”. SIGGRAPH 78 Заседаний конференции. 1978, стр 12–19.

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

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

Смотрите также

|

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