本文主要是介绍Pytorch学习 day05(RandomCrop、Transforms工具使用总结),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
RandomCrop
- 将PIL或Tensor格式的输入图片,随机裁剪指定尺寸的部分
- 输入尺寸可以为序列或单个整形数字
- 代码如下:
from PIL import Image
from torchvision import transforms
from torch.utils.tensorboard import SummaryWriterimg = Image.open("images/0013035.jpg") #打开一张图片
print(img)writer = SummaryWriter("logs") #创建一个writer对象# Totensor
trans_tensor = transforms.ToTensor() #创建一个ToTensor对象
img_tensor = trans_tensor(img) #使用__call__方法,将PIL 转换为tensor
writer.add_image("Totensor", img_tensor) #将tensor添加到writer对象中,就可以用tensorboard展示图象# RandomCrop
trans_random = transforms.RandomCrop(100) #创建一个RandomCrop对象 100是裁剪的尺寸
trans_compose = transforms.Compose((trans_random, trans_tensor)) #创建一个Compose对象,结合RandomCrop和ToTensor
for i in range(10): # 循环10次 i=0,1,2,3,4,5,6,7,8,9 随机裁剪10次img_randomcrop = trans_compose(img) writer.add_image("RandomCrop", img_randomcrop,i) #将裁剪后的tensor添加到writer对象中 i是第几次裁剪
- 结果如下:
Transforms工具使用总结
- 关注工具的输入和输出
- 多看官方文档,按ctrl + 左键单击即可进入官方文档
- 输入可以看_ _ init _ _ 方法,需要什么参数:
- self不用管
- 带有 = 的如:xx = 12 表示带有默认值,也不用管
- 在Args: 中查看需要我们填写的参数是要求什么类型的
- 输出可以通过print()方法 + type()方法 + 断点调试,在线程和变量中查看具体的类型数据,如下:
这篇关于Pytorch学习 day05(RandomCrop、Transforms工具使用总结)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!