torchvision.transforms.Normalize()(和.ToTensor()的理解
torchvision.transforms.ToTensor()
将numpy的ndarray或PIL.Image读的图片(H,W,C)转换成形状为(C,H, W)的Tensor格式,当然,需要特别注意的是,当使用ToTensor() 将numpy转为Tensor格式时,numpy中的元素必须是uint类型时才会将[0,255]归一化到[0,1.0]之间,否则不作映射(一般用uint8)
torchvision.transforms.Normalize(mean, std)
- 对形如(C,H,W)的tensor按照第一个通道那个维度(-mean/std),一般mean取(0.5,0.5,0.5),std取(0.5,0.5,0.5)(因为三个通道)
- 一般先进行ToTensor在做Normalize,这样可以使得数据范围在(-1, 1)之间
- 做完可以保证同一特征之间差异度保持,消除不同特征之间的差异
本文来自博客园,作者:SXQ-BLOG,转载请注明原文链接:https://www.cnblogs.com/sxq-blog/p/16687349.html