PyTorch学习笔记(1)--Transforms的使用

PyTorch学习笔记(1)Transforms的使用

    本博文是PyTorch的学习笔记,第1次内容记录,主要记录了Transforms的使用。

1.什么是Transforms?

1.1Transforms的定义

    对于视觉方向的图像处理方面,PyTorch提供了很好的预处理接口,对于图像的转换处理,使用 torchvision.tranforms 模块使得这些操作非常高效。

1.2transforms.py文件中定义了哪些类

   在transforms.py文件中定义了许多常用的类,通过查看其定义文件,可看到文件中定义的全部类的信息。全部内容如下所示:

__all__ = ["Compose", "ToTensor", "PILToTensor", "ConvertImageDtype", "ToPILImage", "Normalize", "Resize", "Scale",
           "CenterCrop", "Pad", "Lambda", "RandomApply", "RandomChoice", "RandomOrder", "RandomCrop",
           "RandomHorizontalFlip", "RandomVerticalFlip", "RandomResizedCrop", "RandomSizedCrop", "FiveCrop", "TenCrop",
           "LinearTransformation", "ColorJitter", "RandomRotation", "RandomAffine", "Grayscale", "RandomGrayscale",
           "RandomPerspective", "RandomErasing", "GaussianBlur", "InterpolationMode", "RandomInvert", "RandomPosterize",
           "RandomSolarize", "RandomAdjustSharpness", "RandomAutocontrast", "RandomEqualize"]

   查看截图效果如下:
在这里插入图片描述

2.Transforms应用举例

2.1项目情况

    通过代码实践transforms中ToTensor类的基本使用。在PyCharm中创建工程PyTorch_learning,并创建数据文件Dataset,里面的数据下载地址为:链接: https://pan.baidu.com/s/1K2c-5fA7bZTShUbv1BrhwQ 密码: towr。在工程下创建main.py文件,工程情况如下所示:
在这里插入图片描述

2.2代码详情

    在main.py文件中写如下的代码:代码中主要使用了transorfoms中的Tensor类,其中SummaryWriter用于tensorboard展示图片。(PS:关于Tensorboard的基本使用,可以参照这个Tensorboard博文中的内容)

# coding :UTF-8
# 文件功能: 代码实现PyTorch中Transforms基本功能
# 开发人员: dpp
# 开发时间: 2021/8/9 11:32 下午
# 文件名称: main.py
# 开发工具: PyCharm
from PIL import Image
from torch.utils.tensorboard import SummaryWriter
from torchvision import transforms

# python的用法-》tensor数据类型
# 通过transforms.ToTensor去解决两个问题

# 2、为什么我们需要Tensor数据类型

img_path = "dataset/train/ants_image/0013035.jpg"
img = Image.open(img_path)
# writer用于tensorboard显示图片
writer = SummaryWriter('logs')

# 1、transsforms该如何使用
tensor_trans = transforms.ToTensor()
tensor_img = tensor_trans(img)

writer.add_image("Tensor_img", tensor_img)
writer.close()

2.3运行过程

    在上段代码中用到了Tensorboard,于是在PyCharm中做如下步骤的操作:

  1. 右键运行main.py文件,会在项目结果中生成logs文件,效果如下:
    在这里插入图片描述
  2. 在PyCharm中的Terminal界面中输入代码:
    python3 -m tensorboard.main --logdir=logs
    该代码用于设置tensorboard的文件夹。执行代码之后会显示下述结果:
    在这里插入图片描述
    如果代码不显示上面的结果,可试试下面的代码:
    tensorboard --logdir=logs
    3.直接点击http://localhost:6007,或者在浏览器输入上述地址,在浏览器中展示Tensorboard的内容:
    在这里插入图片描述

3.学习小结

    在本文中展示了Transforms中Tensor类的使用,用下图总结一下其使用过程,在后续将继续学习Transforms中更多的工具类。
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值