PYtorch学习第二天 (学习自B站小土堆

tensorBoard 和transform的学习(学习自B站小土堆的视频

1、 tensorBoard

#tensorBoard 提供机器学习实验所需的可视化功能和工具:
from torch.utils.tensorboard import SummaryWriter
import numpy as np
from PIL import Image

writer=SummaryWriter("logs")
image_path="dataset/bees_img/16838648_415acd9e3f.jpg"
img_PIL=Image.open(image_path)
img_array=np.array(img_PIL)
print(type(img_array))


writer.add_image("test",img_array,3,dataformats='HWC')
for i in range(100):
    writer.add_scalar("y=3x",3*i,i) #title y x 按住ctrl+光标 就可以打开那个类的介绍

writer.close()

#在terminal 输入 tensorboard --logdir=logs --port=6007 就可以在6007端口打开图片 step不同的步数可以看到不同的结果
#print(type(img))   opencv读取的为numpy型
#teminal中 ctrl+C 出来可以操作的行 可以安装包
#可以显示坐标  也可以显示图片 step1 2 3  可以换地址后实现换图片

2、transform的学习

from PIL import Image
from torchvision import transforms
from torch.utils.tensorboard import SummaryWriter

#transform像一个工具箱 里面有很多工具例如totensor resize 拿一些特定格式的图片经过这些工具变为我们想要类型的图片
#通过transform.totensor解决 1transform该如何使用 2tensor数据类型与其它类型有什么区别

img_path="dataset/ants_img/0013035.jpg"
img=Image.open(img_path)

writer=SummaryWriter("logs")

#解决 1transform该如何使用 创建具体的工具(transform.++) 然后去使用 给其输入
tensor_trans=transforms.ToTensor()#创建的工具 class????
tensor_img=tensor_trans(img)#使用工具

writer.add_image("Tensor_img",tensor_img)
writer.close()

#2tensor可以理解为包装了反向神经网络基础的一些参数

一些常用的transform工具

#totensor ToPILImage Resize等
from PIL import Image
from torch.utils.tensorboard import SummaryWriter
from torchvision import transforms
#summarywriter这个函数用于创建一个tensorboard文件
#

writer=SummaryWriter("logs")
img=Image.open("dataset/ants_img/0013035.jpg")
print(img)

#Totensor
trans_totensor=transforms.ToTensor()
img_tensor=trans_totensor(img)
print(img_tensor)
writer.add_image("T0Tensor",img_tensor)
writer.close()

#normalize
print(img_tensor[0][0][0])
trans_norm=transforms.Normalize([1,2,3],[6,2,1])#需要填入的东西看初始化?
img_norm=trans_norm(img_tensor)
writer.add_image("normal",img_norm,1)


writer.close()

#risize
trans_resize=transforms.Resize((512,512))
#img (pil)--risize--img risize (pil)
img_resize=trans_resize(img)
img_resize=trans_totensor(img_resize)
writer.add_image("resize",img_resize,0)

writer.close()

#compose 这个类的主要作用是串联多个图片变换transform 的操作
trans_resize_2=transforms.Resize(512)
trans_compose=transforms.Compose([trans_resize_2,trans_totensor])#括号!
trans_resize_2=trans_compose(img)
writer.add_image("resize",trans_resize_2,1)

writer.close()

#randomcrop
trans_random=transforms.RandomCrop((500,600))
trans_compose_2=transforms.Compose([trans_random,trans_totensor])
for i in range(10):
    img_crop=trans_compose_2(img)
    writer.add_image("randomcrop",img_crop,i)

writer.close()


#1、总结关注输入输出 多看官方文档
# 2、看init初始化需要设置什么参数 有默认值的可以不用设置 没有默认值的 去下面找其作用 设置一个值
#输出的类型不知道 可以输出print(type()) 或者进行debug
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值