Torchvision.Transforms

Transforms包含常用图像转换操作。可以使用Compose将它们链接在一起。 此外,还有torchvision.transforms.functional模块,可以对转换进行细粒度控制。 如果需要构建更复杂的图像转换方式,这将很有用。

class torchvision.transforms.Compose(transforms)

Example:

transforms.Compose([
transforms.CenterCrop(10),
transforms.ToTensor(),
])

Transforms on PIL Image

CenterCrop

class torchvision.transforms.CenterCrop(size)

将给定的PIL.Image进行中心切割,得到给定的size,size可以是tuple(target_height, target_width)。size也可以是一个Integer,在这种情况下,切出来的图片的形状是正方形。

RandomCrop

class torchvision.transforms.RandomCrop(size, padding=None, pad_if_needed=False, fill=0, padding_mode='constant')

切割中心点的位置随机选取。size可以是tuple也可以是Integer

RandomResizedCrop

class torchvision.transforms.RandomResizedCrop(size,
scale=(0.08, 1.0), ratio=(0.75, 1.3333333333333333), interpolation=2)

将给定图像裁剪为随机大小和宽高比。裁剪为原始尺寸的随机尺寸(默认值:0.08至1.0)和原始宽高比的随机纵横比(默认值:3/4至4/3)。 最终将其crop为给定大小。 这通常用于训练Inception网络。

Resize

class torchvision.transforms.Resize(size, interpolation=2)

将输入图像调整为给定尺寸。 该图像可以是PIL图像或pytorch张量,在这种情况下,它应具有[…,H,W]形状,其中…表示任意数量的前导尺寸

对Tensor进行变换

class torchvision.transforms.Normalize(mean, std)

给定均值:(R,G,B),方差:(R,G,B),将会把Tensor正则化。即:Normalized_image=(image-mean)/std

ToTensor

class torchvision.transforms.ToTensor

把一个取值范围是[0,255]的PIL.Image或者shape为(H,W,C)的numpy.ndarray,转换成形状为[C,H,W],取值范围是[0,1.0]的torch.FloadTensor

ToPILImage

class torchvision.transforms.ToPILImage

将shape为(C,H,W)的Tensor或shape为(H,W,C)的numpy.ndarray转换成PIL.Image,值不变。

Lambda(lambd)

class torchvision.transforms.Lambda(lambd)

通过Lambda构建匿名函数,进行图像转换。

Pytorch Torchvision Transform的更多相关文章

  1. LeNet-5 pytorch+torchvision+visdom

    # ====================LeNet-5_main.py=============== # pytorch+torchvision+visdom # -*- coding: utf- ...

  2. Linux服务器配置GPU版本的pytorch Torchvision TensorFlow

    最近在Linux服务器上配置项目,项目需要使用GPU版本的pytorch和TensorFlow,而且该项目内会同时使用TensorFlow的GPU和CPU. 在服务器上装环境,如果重新开始,就需要下载 ...

  3. pytorch torchvision.ImageFolder的使用

    参考:https://pytorch-cn.readthedocs.io/zh/latest/torchvision/torchvision-datasets/ torchvision.dataset ...

  4. pytorch torchvision对图像进行变换

    class torchvision.transforms.Compose(转换) 多个将transform组合起来使用. class torchvision.transforms.CenterCrop ...

  5. 云服务器搭建anaconda pytorch torchvision

    (因为在普通用户上安装有些权限问题安装出错,所以我在root用户下相对容易安装,但是anaconda官网说可以直接在普通用户下安装,不过,在root下安装,其他用户也是能用的. 访问Anaconda官 ...

  6. Summary on deep learning framework --- PyTorch

    Summary on deep learning framework --- PyTorch  Updated on 2018-07-22 21:25:42  import osos.environ[ ...

  7. tensorflow/pytorch/mxnet的pip安装,非源代码编译,基于cuda10/cudnn7.4.1/ubuntu18.04.md

    os安装 目前对tensorflow和cuda支持最好的是ubuntu的18.04 ,16.04这种lts,推荐使用18.04版本.非lts的版本一般不推荐. Windows倒是也能用来装深度GPU环 ...

  8. PyTorch(一)Basics

    PyTorch Basics import torch import torchvision import torch.nn as nn import numpy as np import torch ...

  9. [转载]pytorch自定义数据集

    为什么要定义Datasets: PyTorch提供了一个工具函数torch.utils.data.DataLoader.通过这个类,我们在准备mini-batch的时候可以多线程并行处理,这样可以加快 ...

随机推荐

  1. 【题解】Luogu p3478 [POI2008]STA-Station 动态规划

    题目描述 给出一个$N$个点的树,找出一个点来,以这个点为根的树时,所有点的深度之和最大 输入输出格式 输入格式 第一行一个数$n$,表示树上共有$n$个点接下来$n-1$行,表示$n-1$条边;每行 ...

  2. Java字符串比较(3种方法)以及对比 C++ 时的注意项

    字符串比较是常见的操作,包括比较相等.比较大小.比较前缀和后缀串等.在 Java 中,比较字符串的常用方法有 3 个:equals() 方法.equalsIgnoreCase() 方法. compar ...

  3. MySQL:一条更新语句是如何执行的

    目录 引言 更新流程图 更新流程说明 第一步:更新数据 数据页内存 Change Buffer 第二步:缓存日志内容 redo log buffer binlog cache 第三步:日志写入磁盘 两 ...

  4. Cable TV Network 顶点连通度 (最大流算法)

    Cable TV Network 题目抽象:给出含有n个点顶点的无向图,给出m条边.求定点联通度   K 算法:将每个顶点v拆成 v'   v''  ,v'-->v''的容量为1.       ...

  5. angular组件间的通信(父子、不同组件的数据、方法的传递和调用)

    angular组件间的通信(父子.不同组件的数据.方法的传递和调用) 一.不同组件的传值(使用服务解决) 1.创建服务组件 不同组件相互传递,使用服务组件,比较方便,简单,容易.先将公共组件写在服务的 ...

  6. Docker下的mysql安装指令(Mac)

    工具   简介 对于Docker,绝对是开发人员的一款利器!当下特别火热的虚拟化技术.都说不知Docker是什么,作为IT人就out了. 关于Docker 是什么.及其基础学习可以参考: <Do ...

  7. TCP/UDP/HTTP的区别和联系(转载)

    一.TPC/IP协议是传输层协议,主要解决数据如何在网络中传输,而HTTP是应用层协议,主要解决如何包装数据. 关于TCP/IP和HTTP协议的关系,网络有一段比较容易理解的介绍:"我们在传 ...

  8. C语言:按行读TXT文件

    //搂行读取TXT #include <stdio.h> #include <stdlib.h> #include <string.h> #define MAX_L ...

  9. C语言入门思路

    C语言编程入门 0.数学中的常数在编程语言中称为常量,是一直不变的.如1,2,'a',"abc",3456,34.56等1.变量:类似于数学中的未知数.实际上就是指可用内存的一块区 ...

  10. JPA用法中字段起名规范

    前两天在学习Springboot使用JPA 来操作数据库时,碰到一个问题,最终发现了JPA写法中表字段名称要写规范. 记录下来提醒自己. CityEntity是一个City的实体类. 1 @Table ...