Transforms转换Tensor数据类型、归一化

Transforms用来对图像进行一些变换,转换成具体格式的tensor类型数据。

一、ToTensor()使用:

from PIL import Image
from torchvision import transforms

#转换成tensor数据类型
img_PIL = Image.open("dataset/train/ants_image/0013035.jpg")

#创建trans_tensor对象,用来对图片进行类型转换
tensor_trans = transforms.ToTensor()
#调用transforms对象的__call__内置函数进行数据类型转换
img_tensor = tensor_trans(img_PIL)

print(img_tensor)

二、tensor数据类型:

tensor是一个封装了神经网络所需参数的特殊数据类型。

三、Normalize()使用:

from PIL import Image
from torchvision import transforms

#转换成tensor数据类型
img_PIL = Image.open("dataset/train/ants_image/0013035.jpg")

#创建trans_tensor对象,用来对图片进行类型转换
trans_tensor = transforms.ToTensor()
#调用trans_tensor对象的__call__内置函数进行数据类型转换
img_tensor = trans_tensor(img_PIL)

#创建归一化对象,需要给出三维图片上各个维度的均值和方差
trans_norm = transforms.Normalize([0.5, 0.5, 0.5], [0.5, 0.5, 0.5])
#调用trans_norm对象的__call__内置函数进行tensor数据的归一化
img_norm = trans_norm(img_tensor)

四、Resize()使用:

from PIL import Image
from torchvision import transforms

#转换成tensor数据类型
img_PIL = Image.open("dataset/train/ants_image/0013035.jpg")

#创建trans_tensor对象,用来对图片进行类型转换
trans_tensor = transforms.ToTensor()
#调用trans_tensor对象的__call__内置函数进行数据类型转换
img_tensor = trans_tensor(img_PIL)

#创建对象,用来改变图片尺寸(长,宽)
trans_resize = transforms.Resize((512,512))
#调用trans_resize对象的__call__内置函数进行图片缩放
img_resize = trans_resize(img_PIL)

五、compose()对象:

from PIL import Image
from torchvision import transforms

#转换成tensor数据类型
img_PIL = Image.open("dataset/train/ants_image/0013035.jpg")

#创建trans_tensor对象,进行图像类型变换
trans_tensor = transforms.ToTensor()
#创建trans_resize对象,宽调整为512,高不变
trans_resize = transforms.Resize(512)

#trans_compose对象用来预设执行流程,先执行trans_resize改变图像维度,再执行trans_tensor转为tensor类型
trans_compose =  transforms.Compose([trans_resize,trans_tensor])
trans_compose(img_PIL)

相关推荐

  1. Transforms转换Tensor数据类型

    2024-07-16 18:44:14       21 阅读
  2. PyTorch之list、ndarray、tensor数据类型相互转换

    2024-07-16 18:44:14       26 阅读
  3. 数据预处理:标准化和

    2024-07-16 18:44:14       52 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-16 18:44:14       70 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-16 18:44:14       74 阅读
  3. 在Django里面运行非项目文件

    2024-07-16 18:44:14       62 阅读
  4. Python语言-面向对象

    2024-07-16 18:44:14       72 阅读

热门阅读

  1. 瑞宏嘉鑫建材元宇宙:探索虚拟世界的无限可能

    2024-07-16 18:44:14       19 阅读
  2. 探索深度学习与Transformer架构的最新进展

    2024-07-16 18:44:14       20 阅读
  3. 大白话讲解设计原则及其优缺点

    2024-07-16 18:44:14       19 阅读
  4. vector的模拟实现

    2024-07-16 18:44:14       19 阅读
  5. Python实现发票信息识别

    2024-07-16 18:44:14       18 阅读
  6. TCP可靠传输例题

    2024-07-16 18:44:14       19 阅读
  7. 漏洞-Alibaba Nacos derby 远程代码执行漏洞

    2024-07-16 18:44:14       21 阅读