Pytorch使用transforms
首先,这次讲解的tansforms
功能,通俗地讲,类似于在计算机视觉流程里的图像预处理部分的数据增强。
transforms的原理:
说明:图片(输入)通过工具得到结果(输出),这个工具,就是transforms
模板工具,(tool=transforms.ToTensor()
具体工具),使用工具result=tool
(图片)
tansforms的调用与使用,由下图可得:
- 先创建一个
transforms.Tensor(),
使用from torchvision import transforms
调包 transforms
去调init函数- init去调用真正的
transforms
类,里面就有很多的方法(绿色五角星标注),例如:resize
,ToTensor
,CenterCrop
(从这些方法可以看出,许多都是数据增强的方法)。
接下来,上代码:
import os from torchvision import transforms from PIL import Image root_path = "D:\\data\\basic\\Image" label_path = "aligned" # 1.获取aligned第一张图的名字 img_dir = os.path.join(root_path, label_path) img_list = os.listdir(img_dir) img_path = img_list[0] # 2.获取aligned第一张图的路径 img = os.path.join(root_path, label_path, img_path) # 3.使用python自带的PIL获取图片 img = Image.open(img) # 4.将PIL利用transforms转换成ToTensor to_tensor = transforms.ToTensor() # 创建totensor () img = to_tensor(img) # 使用to_tensor直接将图片的PIL转化为tensor print(img) # transforms
代码结果:
相关推荐
-
pytorch中的transforms模块实例详解
pytorch中的transforms模块中包含了很多种对图像数据进行变换的函数,这些都是在我们进行图像数据读入步骤中必不可少的,下面我们讲解几种最常用的函数,详细的内容还请参考pytorch官方文档(放在文末). data_transforms = transforms.Compose([ transforms.RandomResizedCrop(224), transforms.RandomHorizontalFlip(), transforms.ToTensor(), transforms
-
Pytorch使用transforms
首先,这次讲解的tansforms功能,通俗地讲,类似于在计算机视觉流程里的图像预处理部分的数据增强. transforms的原理: 说明:图片(输入)通过工具得到结果(输出),这个工具,就是transforms模板工具,(tool=transforms.ToTensor()具体工具),使用工具result=tool(图片) tansforms的调用与使用,由下图可得: 先创建一个transforms.Tensor(),使用from torchvision import transforms调包
-
Pytoch之torchvision.transforms图像变换实例
transforms.CenterCrop(size) 将给定的PIL.Image进行中心切割,得到给定的size,size可以是tuple,(target_height, target_width).size也可以是一个Integer,在这种情况下,切出来的图片的形状是正方形. size可以为int,也可以为float #定义中心切割 centerCrop = transforms.CenterCrop((img.size[0]/2,img.size[1]/2)) imgccrop = cen
-
初识Pytorch使用transforms的代码
首先,这次讲解的tansforms功能,通俗地讲,类似于在计算机视觉流程里的图像预处理部分的数据增强. transforms的原理: 说明:图片(输入)通过工具得到结果(输出),这个工具,就是transforms模板工具,(tool=transforms.ToTensor()具体工具),使用工具result=tool(图片) tansforms的调用与使用,由下图可得: 先创建一个transforms.Tensor(),使用from torchvision import transforms调包
-
pytorch 中transforms的使用详解
目录 transforms ToTensor transforms使用 为什么需要tensor数据类型呢? 常见的transforms 内置方法__call__() Normalize Resize Compose transforms 按住Ctrl查看transforms的源码可以知道,transforms就是一个python文件,里面定义了很多类,每一个类都是一个工具在结构那里,可以看到有很多的类 ToTensor Convert a PIL Image or numpy.ndarray t
-
Pytorch中transforms.Resize()的简单使用
目录 transforms.Resize()的简单使用 transforms.Resize([224, 224])解读 transforms.Resize()的简单使用 简单来说就是调整PILImage对象的尺寸,注意不能是用io.imread或者cv2.imread读取的图片,这两种方法得到的是ndarray. 将图片短边缩放至x,长宽比保持不变: transforms.Resize(x) 而一般输入深度网络的特征图长宽是相等的,就不能采取等比例缩放的方式了,需要同时指定长宽: transfo
-
Pytorch中的Tensorboard与Transforms搭配使用
这章是结合之前学习的Tensforboard与Transforms的一个练习. 直接上代码: from PIL import Image from torch.utils.tensorboard import SummaryWriter from torchvision import transforms import os root_path = "D:\\data\\basic\\Image" lable_path = "aligned" img_dir = o
-
pytorch中的transforms.ToTensor和transforms.Normalize的实现
目录 transforms.ToTensor transforms.Normalize transforms.ToTensor 最近看pytorch时,遇到了对图像数据的归一化,如下图所示: 该怎么理解这串代码呢?我们一句一句的来看,先看transforms.ToTensor(),我们可以先转到官方给的定义,如下图所示: 大概的意思就是说,transforms.ToTensor()可以将PIL和numpy格式的数据从[0,255]范围转换到[0,1] ,具体做法其实就是将原始数据除以255.另外
-
Pytorch入门之mnist分类实例
本文实例为大家分享了Pytorch入门之mnist分类的具体代码,供大家参考,具体内容如下 #!/usr/bin/env python # -*- coding: utf-8 -*- __author__ = 'denny' __time__ = '2017-9-9 9:03' import torch import torchvision from torch.autograd import Variable import torch.utils.data.dataloader as Data
-
PyTorch上实现卷积神经网络CNN的方法
一.卷积神经网络 卷积神经网络(ConvolutionalNeuralNetwork,CNN)最初是为解决图像识别等问题设计的,CNN现在的应用已经不限于图像和视频,也可用于时间序列信号,比如音频信号和文本数据等.CNN作为一个深度学习架构被提出的最初诉求是降低对图像数据预处理的要求,避免复杂的特征工程.在卷积神经网络中,第一个卷积层会直接接受图像像素级的输入,每一层卷积(滤波器)都会提取数据中最有效的特征,这种方法可以提取到图像中最基础的特征,而后再进行组合和抽象形成更高阶的特征,因此CNN在
-
PyTorch读取Cifar数据集并显示图片的实例讲解
首先了解一下需要的几个类所在的package from torchvision import transforms, datasets as ds from torch.utils.data import DataLoader import matplotlib.pyplot as plt import numpy as np #transform = transforms.Compose是把一系列图片操作组合起来,比如减去像素均值等. #DataLoader读入的数据类型是PIL.Image
随机推荐
- PHP使用内置函数file_put_contents写入文件及追加内容的方法
- JSP的request对象实例详解
- 初学JavaScript第二章
- 利用CSS3新特性创建透明边框三角
- javascript实现当前页导航激活的方法
- Shell脚本实现的单机流量统计功能
- SQL Server 2008中SQL之WaitFor使用介绍
- Java多线程编程之Lock用法实例
- TextField和TextView限制输入字数长度
- 超好用轻量级MVC分页控件JPager.Net
- JavaScript实现in-place思想的快速排序方法
- 使用JS轻松实现ionic调用键盘搜索功能(超实用)
- MySQL性能参数详解之Skip-External-Locking参数介绍
- Docker如何使用Dockerfile构建镜像
- JS判断鼠标从什么方向进入一个容器实例说明
- 几种tab切换详解
- 基于C语言实现的贪吃蛇游戏完整实例代码
- JS常见创建类的方法小结【工厂方式,构造器方式,原型方式,联合方式等】
- 基于javascript实现全屏漂浮广告
- Bootstrap CSS组件之大屏幕展播