我的数据集是一个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
这正确吗?
谢谢!