Tensorboard就是一个效果可视化的工具。
1、Tensorboard使用方法:
使用方法是:
from torch.utils.tensorboard import SummaryWriter
writer = SummaryWriter('logs') # 存储到'logs'文件夹下
其中我们会用到两个方法:
(一):画图象
writer.add_image()
(二):画函数
writer.add_scalar()
最后记得关闭:
writer.close()
之后用Anaconda命令行打开:
tensorboard --logdir=xxx --port=6008 # xxx是文件名 ; 6007是指定端口名
特别的:每次使用完之后,记得删除对应文档(这个方法最方便),不然之后绘制的图像或者图片会覆盖。
2、writer.add_scalar()的用法
writer.add_scalar(“标题名称”,“y轴坐标”,“x轴坐标”)
例子:y = 2x
from torch.utils.tensorboard import SummaryWriter
for i in range(100):
writer.add_scalar("y=2x",2*i,i)
writer.close() # 记得关闭
之后用Anaconda命令行打开:
tensorboard --logdir=logs
得到:
3、 writer.add_image()的使用
writer.add_image(“图像名字” , 所传的图像(数据类型为tensor或者numpy) , 训练步骤)
例子:读取一张图片
from torch.utils.tensorboard import SummaryWriter
import numpy as np
from PIL import Image
writer = SummaryWriter("logs") # 创建实例;初始化一个logs的文件夹,之后文件存储在这里
## 写图片 writer.add_image()
# 用PIL读取的图片是jpg格式的,这里的格式需要tensor的 / numpy的(利用Opencv读取图片,获得numpy型图片数据)/或者直接numpy转换
image_path = 'data/train/ants_image/0013035.jpg'
img_PIL = Image.open(image_path)
img_array = np.array(img_PIL)
# 因为numpy格式输出的图片,形状是HWC,所以我们要指定一下形状
writer.add_image('test',img_array,1,dataformats='HWC')
writer.close() # 记得关闭
得到: