Мой набор данных - это массив Numpy с размерами (N, W, H, C), где N - количество изображений, H и W - высота и ширина соответственно, а C - количество каналов.
Я знаю, что существует множество инструментов, но я бы хотел нормализовать изображения только с помощью Numpy.
Мой план состоит в том, чтобы вычислить среднее и стандартное отклонение по всему набору данных для каждого из трех каналов, а затем вычесть среднее и поделить на стандартное отклонение.
Предположим, у нас есть два изображения внабор данных и первый канал этих двух изображений выглядит следующим образом:
x=array([[[3., 4.],
[5., 6.]],
[[1., 2.],
[3., 4.]]])
Вычислить среднее значение:
numpy.mean(x[:,:,:,0])
= 3.5
Вычислить стандартное значение:
numpy.std(x[:,:,:,0])
= 1.5
Нормализовать первый канал:
x[:,:,:,0] = (x[:,:,:,0] - 3.5) / 1.5
Это правильно?
Спасибо!