pytorch基础(六)--------transforms图像预处理

一、transforms运行机制

在我们配置conda环境时,安装了torch和torchvision。其中的torchvision就是计算机视觉工具。
在torchvision中有几个比较重要的方法:
torchvision.transforms:常用的图像预处理方法
torchvision.datasets:常用的数据集dataset实现(提供了常用的数据集),如MNIST,CIFAR-10,ImageNet等
torchvision.model:提供了常用的网络模型

在transforms中提供了大量的图像数据预处理的方法,如数据中心化、数据标准化、缩放、裁剪、旋转、翻转、填充、噪声增加、灰度变化、线性变换、仿射变换、亮度等
代码展示:

from torchvision import transforms
norm_mean = [0.485, 0.456, 0.406]
norm_std = [0.229, 0.224, 0.225]

# 三个最基本的转换
train_trans = transforms.Compose([
    transforms.Resize((32, 32)),	# 将图像形状调整为输入网络模型的大小
    transforms.RandomGrayscale(0.9), # 随机90%的图像 灰度化处理
    transforms.ToTensor(),  # 转换为张量并进行归一化操作
    transforms.Normalize(norm_mean, norm_std)	# 进行标准化
])

在Dataset处理图像数据中,transforms作用在__getitem__方法中。

二、数据标准化

对数据进行标准化的原因是标准化后会加快模型的收敛

transforms.Normalize(mean, std, inplace=False)
功能:逐通道(channel)的对图像进行标准化
output = (input - mean)/ std
参数:
mean:各通道的均值
std:各通道的标准差
inplace:是否原地操作(也就是否在原内存地址进行操作,是否开辟新的内存空间)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值