Функция image.rgb_to_yiq
Функция image.rgb_to_yiq преобразует изображения из
цветового пространства RGB в цветовое пространство YIQ.
Первым параметром функция принимает тензор с изображениями,
последняя ось которого должна иметь размер 3 и
содержать значения красного, зеленого и синего каналов.
Функция возвращает тензор той же формы, что и входной,
но с значениями в пространстве YIQ.
Значения каналов во входном тензоре могут быть
как целочисленными, так и вещественными. Выходной тензор
всегда имеет тип float32.
Синтаксис
tf.image.rgb_to_yiq(images)
Пример
Давайте преобразуем одно изображение размером
1 на 1 с одним пикселем белого цвета:
import tensorflow as tf
img = tf.constant([[[255, 255, 255]]], dtype=tf.float32)
res = tf.image.rgb_to_yiq(img)
print(res)
Результат выполнения кода:
tf.Tensor([[[255. 0. 0.]]], shape=(1, 1, 3), dtype=float32)
Пример
Давайте преобразуем изображение размером
2 на 2 с четырьмя пикселями:
import tensorflow as tf
img = tf.constant([
[[255, 0, 0], [0, 255, 0]],
[[0, 0, 255], [255, 255, 0]]
], dtype=tf.float32)
res = tf.image.rgb_to_yiq(img)
print(res)
Результат выполнения кода:
tf.Tensor(
[[[ 76.245 , 152.538 , 76.245 ],
[ 149.685 , -74.20300293 , -21.66799927 ],
[ 29.07 , -35.54299927 , 148.79800415 ],
[ 225.93 , 78.33599854 , 54.57799911 ]]], shape=(2, 2, 3), dtype=float32)
Пример
Давайте преобразуем пакет из двух изображений размером
1 на 1:
import tensorflow as tf
img = tf.constant([
[[[255, 0, 0]]],
[[[0, 255, 0]]]
], dtype=tf.float32)
res = tf.image.rgb_to_yiq(img)
print(res)
Результат выполнения кода:
tf.Tensor(
[[[[ 76.245 , 152.538 , 76.245 ]]],
[[[149.685 , -74.20300293 , -21.66799927 ]]]], shape=(2, 1, 1, 3), dtype=float32)
Смотрите также
-
функцию
yiq_to_rgb,
которая преобразует изображения из YIQ в RGB -
функцию
rgb_to_hsv,
которая преобразует изображения из RGB в HSV -
функцию
rgb_to_grayscale,
которая преобразует изображения из RGB в оттенки серого -
функцию
hsv_to_rgb,
которая преобразует изображения из HSV в RGB