tf.image.yuv_to_rgb
Преобразует одно или несколько изображений из YUV в RGB.
tf.image.yuv_to_rgb(
images
)
Возвращает тензор той же формы, что и тензор images, содержащий значения RGB пикселей. Результат определен только в том случае, если значения Y в изображениях находятся в диапазоне [0,1], а значения U и V — в диапазоне [-0.5,0.5].
Согласно приведенному выше описанию, если значения пикселей изображений YUV не находятся в требуемом диапазоне, необходимо масштабировать изображения. В приведенном ниже примере показана предварительная обработка каждого канала изображений перед передачей их в yuv_to_rgb.
yuv_images = tf.random.uniform(shape=[100, 64, 64, 3], maxval=255)
last_dimension_axis = len(yuv_images.shape) - 1
yuv_tensor_images = tf.truediv(
tf.subtract(
yuv_images,
tf.reduce_min(yuv_images)
),
tf.subtract(
tf.reduce_max(yuv_images),
tf.reduce_min(yuv_images)
)
)
y, u, v = tf.split(yuv_tensor_images, 3, axis=last_dimension_axis)
target_uv_min, target_uv_max = -0.5, 0.5
u = u * (target_uv_max - target_uv_min) + target_uv_min
v = v * (target_uv_max - target_uv_min) + target_uv_min
preprocessed_yuv_images = tf.concat([y, u, v], axis=last_dimension_axis)
rgb_tensor_images = tf.image.yuv_to_rgb(preprocessed_yuv_images)
| Аргументы | |
|---|---|
images | Ранг 2 или выше. Данные изображения для преобразования. Последнее измерение должно иметь размер 3. |
| Возвращает | |
|---|---|
images | тензор той же формы, что и images. |
© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/api_docs/python/tf/image/yuv_to_rgb