pytorch框架学习(9)torchvision.transform

前言

之前我们在《pytorch框架学习(6)细节篇》里有提过torchvision.transforms.Compose可以用于对数据进行预处理。本片文章我们将系统的对transform进行学习。

** Transforms的结构**

我们打开transforms.py的源文件可以看到,文件中定义了非常多的class
在这里插入图片描述

** Transforms的作用**

transforms就相当于一个图像处理的工具箱,不同的class就是不同的工具。

** Transforms的用法**

transforms.Compose

将几个变换组合在一起。这个转换不支持torchscript
Converts a PIL Image or numpy.ndarray (H x W x C) in the range [0, 255] to a torch.FloatTensor of shape (C x H x W) in the range [0.0, 1.0]

Example:
        >>> transforms.Compose([
        >>>     transforms.CenterCrop(10),
        >>>     transforms.ToTensor(),
        >>> ])

注意:transforms.Compose的参数应该是一个list(列表)


transforms.ToTensor

转换一个’PIL.Image’或’numpy.ndarray’张量。这个转换不支持torchscript。


transforms.Normalize

用均值和标准差归一化tensor image。


transforms.Resize

扫描二维码关注公众号,回复: 15098087 查看本文章

调整输入图像的大小到给定的大小。
the image can be a PIL Image or a torch Tensor, in which case it is expected to have […, H, W] shape, where … means an arbitrary number of leading dimensions

  • 这个地方要说一下,Resize使用的是双线性插值,如果是做分类问题,有可能出现分割标签出现问题的情况

总结来说,我们在调用这些包的时候,我们需要重点注意输入输出的type。

猜你喜欢

转载自blog.csdn.net/vibration_xu/article/details/126214423
今日推荐