pytorch学习笔记:transforms图像增强

数据增强:对训练集进行一系列的处理变换,使训练集更丰富,从而让模型更具泛化能力。

transforms----裁剪

1.transforms.CenterCrop(size)

功能:从图像中心裁剪指定尺寸的图片。当裁剪尺寸大于原始尺寸时,会使用0值填充,效果就是黑色像素填充

2.transforms.RandomCrop(size, padding)

功能:从原始图片中随机裁剪出尺寸为size的图片。

注:此方法处理流程为首先按padding设置的大小对原图像进行填充,再按照size大小随机从填充完的图像上裁剪出目标图像。

参数与功能:

pytorch学习笔记:transforms图像增强_第1张图片

pytorch学习笔记:transforms图像增强_第2张图片

3.transforms.RandomResizedCrop

pytorch学习笔记:transforms图像增强_第3张图片

scale:随机裁剪面积比例范围,比如0.6的含义是从图像中随机裁剪一个面积占原图像60%面积的区域出来。 裁剪之后图像尺寸可能会小于设定的目标尺寸,因此需要进行插值。

pytorch学习笔记:transforms图像增强_第4张图片

transforms----Flip翻转

pytorch学习笔记:transforms图像增强_第5张图片

pytorch学习笔记:transforms图像增强_第6张图片

expand:图片旋转之后会有部分超出目标尺寸区域,如果不扩大图片,超出的部分图片信息将会丢失(左图为False,右图为True)。

注:expand是根据中心旋转来计算扩大的尺寸的,因此使用其他的旋转中心expand仍会丢失部分信息。

transforms----填充

pytorch学习笔记:transforms图像增强_第7张图片

pytorch学习笔记:transforms图像增强_第8张图片

 

pytorch学习笔记:transforms图像增强_第9张图片

pytorch学习笔记:transforms图像增强_第10张图片

pytorch学习笔记:transforms图像增强_第11张图片

 x(y)轴错切:平行于x(y)轴的边错切之后仍然平行于x(y)轴,但y(x)轴发生扭曲。

pytorch学习笔记:transforms图像增强_第12张图片

  • 注:随机遮挡操作输入数据为tensor形式,value(R,G,B)三者范围都为0-1(需要同时除以255),因此比如说红色为(254/255,0/255,0/255)
  • scale(0.02,0.33)和ratio(0.3,3.3)都为论文推荐设置,长:宽,宽:长 最大都在3倍左右。

pytorch学习笔记:transforms图像增强_第13张图片

Transforms操作方法

pytorch学习笔记:transforms图像增强_第14张图片

自定义transforms要素:

  • 仅接收一个参数,返回一个参数
  • 注意上下游的输出与输入:当前的transforms输入为上一个transforms操作的输出,当前的输出是下一个transforms操作的输入

pytorch学习笔记:transforms图像增强_第15张图片

transforms方法总结

pytorch学习笔记:transforms图像增强_第16张图片

本文为深度之眼Pytorch课程的学习笔记,仅供自己学习使用,如有问题欢迎讨论!关于课程可以扫描下图二维码

pytorch学习笔记:transforms图像增强_第17张图片

 

 

 

你可能感兴趣的:(pytorch学习笔记)