РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
559 of 824 menu

Функция per_image_standardization

Функция per_image_standardization применяется к тензору изображений и выполняет независимую стандартизацию для каждого изображения в батче. Первым параметром передается тензор изображений, обычно четырехмерный с формой [batch, height, width, channels] или трехмерный с формой [height, width, channels]. Функция вычисляет среднее и стандартное отклонение для каждого изображения отдельно и вычитает среднее, после чего делит на стандартное отклонение. Это помогает стабилизировать обучение нейронных сетей и ускорить сходимость.

Синтаксис

tf.image.per_image_standardization(image)

Пример

Давайте стандартизируем одно изображение, представленное двумерным тензором с одним каналом:

import tensorflow as tf image = tf.constant([[1.0, 2.0], [3.0, 4.0]]) res = tf.image.per_image_standardization(image) print(res)

Результат выполнения кода:

tf.Tensor( [[-1.3416357 -0.4472119] [ 0.4472119 1.3416357]], shape=(2, 2), dtype=float32)

Пример

Давайте стандартизируем батч из двух трехканальных изображений размером 2 на 2:

import tensorflow as tf image = tf.constant([ [[[1.0, 2.0, 3.0], [4.0, 5.0, 6.0]], [[7.0, 8.0, 9.0], [10.0, 11.0, 12.0]]], [[[2.0, 4.0, 6.0], [8.0, 10.0, 12.0]], [[14.0, 16.0, 18.0], [20.0, 22.0, 24.0]]] ]) res = tf.image.per_image_standardization(image) print(res)

Результат выполнения кода:

tf.Tensor( [[[[-1.3416357 -1.3416357 -1.3416357] [-0.4472119 -0.4472119 -0.4472119]] [[ 0.4472119 0.4472119 0.4472119] [ 1.3416357 1.3416357 1.3416357]]] <BLANKLINE> [[[-1.3416357 -1.3416357 -1.3416357] [-0.4472119 -0.4472119 -0.4472119]] [[ 0.4472119 0.4472119 0.4472119] [ 1.3416357 1.3416357 1.3416357]]]], shape=(2, 2, 2, 3), dtype=float32)

Пример

Давайте проверим, что после стандартизации среднее значение каждого изображения близко к нулю, а стандартное отклонение - к единице:

import tensorflow as tf image = tf.constant([ [[1.0, 2.0], [3.0, 4.0]], [[5.0, 6.0], [7.0, 8.0]] ]) res = tf.image.per_image_standardization(image) mean = tf.reduce_mean(res, axis=[1, 2]) std = tf.math.reduce_std(res, axis=[1, 2]) print(mean) print(std)

Результат выполнения кода:

tf.Tensor([0. 0.], shape=(2,), dtype=float32) tf.Tensor([1. 1.], shape=(2,), dtype=float32)

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

  • функцию adjust_brightness,
    которая регулирует яркость изображений
  • функцию adjust_contrast,
    которая регулирует контрастность изображений
  • функцию convert_image_dtype,
    которая преобразует тип данных изображения
  • функцию rgb_to_grayscale,
    которая преобразует RGB-изображение в оттенки серого
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить