torchvision.transforms
Transform
torchvision.transforms中定义了一系列数据转换形式,有PILImage,numpy,Tensor间相互转换,还能对数据进行处理。
在torchvision.datasets下载数据的时候,作为一个参数传入,对下载的数据进行处理
1. ToTensor()
torchvision.transforms.ToTensor()
把一个
取值范围是[0,255]的PIL.Image
转换成Tensor
shape 为
(H,W,C)
的numpy.ndarray,转换成形状为[C,H,W]
,取值范围是[0,1]的Tensor
把一个取值范围是[0,255]的PIL.Image转换成Tensor
import numpy as np
from PIL import Image
from torchvision.transforms import transforms
image=Image.open(r"./image/test1.jpg")
c=transforms.ToTensor()(image)
print(c.shape)
shape为(H,W,C)的numpy.ndarray,转换成形状为[C,H,W],取值范围是[0,1.0]的Tensor
n_out = np.random.rand(100,100,3)
print(n_out.dtype)t_out = transforms.ToTensor()(n_out)
print(t_out.type())
自己写的代码测试一下
import numpy as np
import torch
from PIL import Image
from torchvision.transforms import transformsimage = Image.open(r"./image/test1.jpg")a = torch.FloatTensor(np.array(image).transpose(2, 0, 1) / 255.0)b = transforms.Compose([transforms.ToTensor()
])(image)print(a == b)
结果
tensor([[[True, True, True, ..., True, True, True],[True, True, True, ..., True, True, True],[True, True, True, ..., True, True, True],...,[True, True, True, ..., True, True, True],[True, True, True, ..., True, True, True],[True, True, True, ..., True, True, True]],[[True, True, True, ..., True, True, True],[True, True, True, ..., True, True, True],[True, True, True, ..., True, True, True],
2. ToPILImage()
将
ndarray
转换成PILImage
将
Tensor
转换成PILImage
将ndarray转化成PILImage
#初始化随机数种子
np.random.seed(0)data = np.random.randint(0, 255, 300)
print(data.dtype)
n_out = data.reshape(10,10,3)#强制类型转换
n_out = n_out.astype(np.uint8)
print(n_out.dtype)img2 = transforms.ToPILImage()(n_out)
img2.show()
将Tensor转化成PILImage
t_out = torch.randn(3,10,10)
img1 = transforms.ToPILImage()(t_out)
img1.show()
torchvision.transforms相关推荐
- torchvision.transforms 的CenterCrop():在图片的中间区域进行裁剪
pytorch中transform函数 torchvision.transforms是pytorch中的图像预处理包 一般用Compose把多个步骤整合到一起: 比如说 transforms.Comp ...
- 对Tensor进行变换 class torchvision.transforms.Normalize(mean, std) 给定均值:(R,G,B) 方差:(R,G,B),将会把Tensor正则化
对Tensor进行变换 class torchvision.transforms.Normalize(mean, std) 给定均值:(R,G,B) 方差:(R,G,B),将会把Tensor正则化.即 ...
- torchvision.transforms包的使用
torchvision.transforms是专门用来对数据进行相关的处理.我们可完成的操作如下: 归一化 PIL.Image / numpy.ndarray 与Tensor的相互转化 对PIL.Im ...
- 【小白学PyTorch】7.最新版本torchvision.transforms常用API翻译与讲解
机器学习炼丹术]的学习笔记分享 <<小白学PyTorch>> 小白学PyTorch | 6 模型的构建访问遍历存储(附代码) 小白学PyTorch | 5 torchvisio ...
- 【pytorch 】torchvision.transforms.CenterCrop==>从图像中心裁剪图片
transforms.CenterCrop torchvision.transforms.CenterCrop(size) 功能:从图像中心裁剪图片 size: 所需裁剪的图片尺寸 transform ...
- PyTorch 1.0 中文文档:torchvision.transforms
译者:BXuan694 transforms包含了一些常用的图像变换,这些变换能够用Compose串联组合起来.另外,torchvision提供了torchvision.transforms.func ...
- pytorch torchvision.transforms.ToTensor
API 将Shape=(HWC)的PIL.Image或者numpy.ndarray转换成shape=(CHW)的范围在[0.0,1.0]的torch.FloatTensor 像素值范围从[0, 255 ...
- pytorch torchvision.transforms.Resize
API CLASS torchvision.transforms.Resize(size, interpolation=2) 参数 描述 size (sequence or int) 如果size是s ...
- pytorch torchvision.transforms.CenterCrop
应用 以图片中心进行裁剪 import torchivision.transforms import PIL.Image as Image import torchvision.transforms# ...
- pytorch的图像通道变换,torchvision.transforms.Compose,T.ToTensor
torchvision.transforms.ToTensor 显示的二值化图片如图所示, 将numpy的图片shape是hwc(高,宽,通道)格式的图片矩阵转换为chw格式的torch.tensor ...
最新文章
- SAP有用的知识(持续更新)
- php获取网页标题接口,PHP获取网页标题的3种实现方法代码实例
- 你知道脑机接口中的“后门“攻击吗?它真的有可能在现实中实现
- 注册与验证码php源代码,PHP验证码处理源代码
- 用unsigned char 表示字节
- 前端笔记-JavaScript中放json数组要注意的地方(构造灵活的echarts)
- Python的基本编码规范
- Linux 内核版本命名
- POJ1088(记忆搜索加dp)
- python 图表工具_7 款 Python 数据图表工具的比较
- windows2008 网络相关
- php 批量上传图片插件,diyUpload - jQuery多张图片批量上传插件
- Ffplay源码read_thread解读(一)
- [Mac软件推荐] paste - 好用的剪切板记录增强工具
- 如何给一小段视频添加音乐
- 国际标准书号 (International Standard Book Number, ISBN)是专门为识别图书等文献而设计的国际编号
- Python+Vue计算机毕业设计牙无忧6ayy4(源码+程序+LW+部署)
- 无线网络 笔记本连接正常上网,手机之类的就不能上网
- 最优化方法(学习笔记)-第十一章等式约束优化问题
- SSM框架的介绍与搭建
热门文章
- Android NDK之JNI陷阱
- and5.1PowerManagerService深入分析(四)PMS与Display模块
- iOS ffmpeg + libfdk-aac
- Vue之ElementUI导航菜单
- python之random.shuffle
- tensorflow之random_normal
- LED显示驱动(七):图层基本测试总结
- wordpress 数据库详解
- 飞腾服务器自带的kvm管理,领存技术飞腾FT2000+ 2U 12盘位存储服务器
- java placeholder_java swing JTextField设置PlaceHolder