简单来说就是调整PILImage对象的尺寸,注意不能是用io.imread或者cv2.imread读取的图片,这两种方法得到的是ndarray。

将图片短边缩放至x,长宽比保持不变:

transforms.Resize(x)

而一般输入深度网络的特征图长宽是相等的,就不能采取等比例缩放的方式了,需要同时指定长宽:

transforms.Resize([h, w])

例如transforms.Resize([224, 224])就能将输入图片转化成224×224的输入特征图。

这样虽然会改变图片的长宽比,但是本身并没有发生裁切,仍可以通过resize方法返回原来的形状:

from PIL import Image
from torchvision import transformsimg = Image.open('1.jpg')
w, h = img.size
resize = transforms.Resize([224,244])
img = resize(img)
img.save('2.jpg')
resize2 = transforms.Resize([h, w])
img = resize2(img)
img.save('3.jpg')

需要注意的一点是PILImage对象size属性返回的是w, h,而resize的参数顺序是h, w。

Pytorch transforms.Resize()的简单用法相关推荐

  1. Pytorch torch.rsqrt()的简单用法

    官方文档:https://pytorch.org/docs/master/generated/torch.rsqrt.html 简单来说就是对每个元素取平方根后再取倒数,即: out i=1input ...

  2. Pytorch torch.topk()的简单用法

    官方文档:https://pytorch.org/docs/stable/generated/torch.topk.html?highlight=topk#torch.topk 由于numpy本身是没 ...

  3. Pytorch torch.mean()的简单用法

    简单来说就是求平均数. 比如以下的三种简单情况: import torchx1 = torch.Tensor([1, 2, 3, 4]) x2 = torch.Tensor([[1],[2],[3], ...

  4. Pytorch nn.DataParallel()的简单用法

    简单来说就是使用单机多卡进行训练. 一般来说我们看到的代码是这样的: net = XXXNet() net = nn.DataParallel(net) 这样就可以让模型在全部GPU上训练. 方法定义 ...

  5. Pytorch torch.manual_seed()的简单用法

    简单来说就是指定随机数种子(种子可以是个任意int值),用来生成伪随机数: import torchtorch.manual_seed(1) print(torch.rand(1)) print(to ...

  6. Pytorch torch.nonzero()的简单用法

    官方文档:https://pytorch-cn.readthedocs.io/zh/latest/package_references/torch/ 顾名思义,返回非零元素的索引: 先从一维的看起: ...

  7. pytorch transforms图像增强

    一.前言 在学习自己的项目发现自己有很多基础知识不牢,对于图像处理有点不太清楚,因此写下来作为自己的笔记,主要是我想自己动手写一下每一句代码到底做了什么,而不是单纯的我看了知道了它做了什么,说白了,不 ...

  8. pytorch torchvision.transforms.Resize

    API CLASS torchvision.transforms.Resize(size, interpolation=2) 参数 描述 size (sequence or int) 如果size是s ...

  9. transforms.Resize()的用法

    调整PILImage对象的尺寸 提示:不能是用io.imread或者cv2.imread读取的图片,这两种方法得到的是ndarray. 一般输入深度网络的特征图长宽是相等的,就不能采取等比例缩放的方式 ...

最新文章

  1. [第11天]mySQL简单介绍
  2. C++:不用申请变量交换两个变量的值
  3. VUE el-input正则验证
  4. Linux之apt-get:apt-get的简介、安装、使用方法之详细攻略
  5. 基于VS Code创建Java command-line app
  6. c++ 字符串赋给另一个_7.2 C++字符串处理函数
  7. 前后台相互传值的方法概述
  8. matlab图片连续显示,Matlab利用定时器连续显示图片的问题
  9. ZED2+ORB_SLAM3+视觉惯性轨迹保存
  10. @ResponseBody与@RestController的作用与区别
  11. JavaScript中的加密解密
  12. 围棋学习路线及书籍介绍
  13. 多个excel如何合并
  14. 徐亦达老师机器学习课程
  15. 温莎大学的计算机专业,加拿大留学,温莎大学英语计算机专业了解一下
  16. HTML5文件夹隐藏了怎么打开,win10怎么打开隐藏文件夹
  17. 乐视,你敢做VR直播吗?
  18. QT控件最上层或最下层显示
  19. 电脑开机出现奇怪字符_电脑开机黑屏怎么办出现英文字符
  20. ASCII编码与UTF-8编码

热门文章

  1. android get方法的使用方法,android之HttpPostHttpGet使用方法介绍
  2. complex类模板c++_高中地理综合题答题模板,学霸们都收藏了!
  3. python随机数列_Python2随机数列生成器简单实例
  4. mysql cpu高 重启无效_解决mysqlcpu高的问题
  5. coreldraw登录老是出现未知错误_原神:新版本bug频出,史莱姆消失,联机模式提示506错误码...
  6. flowable activiti 回退 驳回_驳回复审中图文组合商标与图形商标不近似性如何论述?...
  7. ROS入门 小乌龟跟随示例
  8. 动态规划系列问题—从小白到大佬的入门、进阶之旅!!!
  9. MQTT 控制报文 - PINGREQ心跳报文,PINGRESP - 第4章
  10. J2EE代码存档--导出Excel