python - 为什么我们将图像归一化为mean=0.5, std=0.5?

标签 python tensorflow deep-learning computer-vision pytorch

我在 Github 上寻找 GAN 代码。我找到的代码使用了 pytorch。在这段代码中,我们首先将图像标准化为 mean = 0.5,std = 0.5。通常,归一化为 min = 0 和 max = 1。或者 mean = 0 和 std = 1 的正态分布。为什么要归一化为 mean = 0.5 和 std = 0.5?

transformtransfo  = transforms.Compose([
        transforms.ToTensor(),
        transforms.Normalize(mean=(0.5, 0.5, 0.5), std=(0.5, 0.5, 0.5))
])

最佳答案

transform.normalizemeanstd 的值不是所需的均值和 std,但是而是要减去和除以的值,即估计均值和标准差。

在您的示例中,您减去 0.5,然后除以 0.5,生成的图像的均值为零且值在 [-1, 1] 范围内

关于python - 为什么我们将图像归一化为mean=0.5, std=0.5?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52138920/

相关文章:

numpy - 使用 Tensorflow 在 Keras 中使用稀疏输入

python - 使用 Tensorflow 多项式回归给出错误答案

machine-learning - 减少误报的最佳策略 : Google's new Object Detection API on Satellite Imagery

machine-learning - SGD 的训练准确率

python - django.core.servers.basehttp.FileWrapper 在 Django 1.9 中消失

python - 从 Java Float 中读取 numpy 数组

python - 如何将 SqlAlchemy 连接查询序列化为 JSON?

python - 在 Python 中比较矩阵并存储结果

android - 集成TensorFlow和DJI SDK时无法合并dex

python - Kmeans 算法的特征缩放