normalize

函数功能

normalize函数用于对图像进行标准化,把数据转换到标准正态分布的数据集中,以加快模型的收敛。

函数接口

1
torchvision.transforms.normalize(mean,std,inplace=False)  

参数

参数名

描述

取值范围

输入/输出

mean

一个序列,包含每个通道的均值。

[0, inf)

输入

std

一个序列,包含每个通道的标准差。

(0, inf)

输入

inplace

bool型参数,默认值为false,表示在原地操作。

bool

输入

返回值

错误码

错误码

描述

KP_PT_STS_NULL_PTR_ERR

指针内存分配错误。

KP_PT_STS_SIZE_ERR

输入的图片规格错误。

示例

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
import numpy as np
from torchvision import transforms

src = np.array([[0, 0, 0, 0, 0],
                 [0, 1, 1, 1, 0],
                 [0, 1, 0, 1, 0],
                 [0, 1, 1, 1, 0],
                 [0, 0, 0, 0, 0]], dtype=np.float32)


# 定义均值和标准差
mean = 0.5 
std = 0.5

transf = transforms.Compose(
    [   transforms.ToTensor(),
        transforms.Normalize(mean, std)
    ]
)
normalized = transf(src)
print(normalized)

运行结果:

1
2
3
4
5
tensor([[[-1., -1., -1., -1., -1.],
         [-1.,  1.,  1.,  1., -1.],
         [-1.,  1., -1.,  1., -1.],
         [-1.,  1.,  1.,  1., -1.],
         [-1., -1., -1., -1., -1.]]])