Функция rgb_to_hsv
Функция image.rgb_to_hsv преобразует одно
или несколько изображений из цветовой модели RGB
в цветовую модель HSV (тон, насыщенность, значение).
Первым параметром функция принимает тензор с
изображениями в формате RGB. Последняя ось тензора
должна иметь размер 3, то есть содержать каналы
красного, зеленого и синего цветов. Значения каналов
могут быть целочисленными или вещественными.
Функция возвращает тензор той же формы, что и
входной, но с каналами HSV.
Синтаксис
tf.image.rgb_to_hsv(images, [name])
Пример
Давайте преобразуем одно изображение, заданное
тензором с формой (2, 2, 3), из RGB в HSV:
import tensorflow as tf
t = tf.constant([
[[255, 0, 0], [0, 255, 0]],
[[0, 0, 255], [255, 255, 255]]
], dtype=tf.float32)
res = tf.image.rgb_to_hsv(t)
print(res)
Результат выполнения кода:
tf.Tensor(
[[[ 0. 1. 1. ]
[120. 1. 1. ]]
[[240. 1. 1. ]
[ 0. 0. 1. ]]], shape=(2, 2, 3), dtype=float32)
Пример
Давайте преобразуем пакет из двух изображений
с формой (2, 2, 2, 3) из RGB в HSV:
import tensorflow as tf
t = tf.constant([
[
[[255, 0, 0], [0, 255, 0]],
[[0, 0, 255], [255, 255, 255]]
],
[
[[128, 128, 128], [64, 128, 192]],
[[10, 20, 30], [200, 100, 50]]
]
], dtype=tf.float32)
res = tf.image.rgb_to_hsv(t)
print(res)
Результат выполнения кода:
tf.Tensor(
[[[[ 0. 1. 1. ]
[120. 1. 1. ]]
[[240. 1. 1. ]
[ 0. 0. 1. ]]]
[[[ 0. 0. 0.5019608 ]
[210. 0.6666667 0.7529412 ]]
[[ 30. 0.6666667 0.11764706]
[ 20. 0.75 0.78431374]]]], shape=(2, 2, 2, 3), dtype=float32)
Пример
Давайте преобразуем изображение из HSV обратно
в RGB с помощью функции image.hsv_to_rgb:
import tensorflow as tf
t = tf.constant([
[[255, 0, 0], [0, 255, 0]],
[[0, 0, 255], [255, 255, 255]]
], dtype=tf.float32)
hsv = tf.image.rgb_to_hsv(t)
res = tf.image.hsv_to_rgb(hsv)
print(res)
Результат выполнения кода:
tf.Tensor(
[[[255. 0. 0.]
[ 0. 255. 0.]]
[[ 0. 0. 255.]
[255. 255. 255.]]], shape=(2, 2, 3), dtype=float32)
Смотрите также
-
функцию
hsv_to_rgb,
которая преобразует изображение из HSV в RGB -
функцию
rgb_to_grayscale,
которая преобразует изображение из RGB в оттенки серого -
функцию
grayscale_to_rgb,
которая преобразует изображение из оттенков серого в RGB -
функцию
adjust_hue,
которая регулирует оттенок изображения в RGB