工作流程:1.将代码运行过程中关心的数据保存在一个文件夹中(writer完成)2.读取这个文件夹中的数据,用浏览器显示出来(命令行运行tensorboard完成)
SummaryWriter类的使用
help:将数据以特定的格式存储到事件文件夹中。
常用方法:
add_image(self, tag, img_tensor, global_step=None, walltime=None, dataformats='CHW')
方法参数说明:
部分参数与上相同;
img_tensor表示图像的数据类型,需要是torch.Tensor
, numpy.array
或者 string/blobname;
最后一个参数是图像的尺寸格式,默认是3HW(3表示通道C),如果不是默认的则需要用最后一个参数进行说明。
文章来源地址https://www.toymoban.com/news/detail-635462.html
在pycharm的terminal终端输入命令tensorboard --logdir=事件文件所在文件夹名
,默认使用6006端口,更改端口可以使用命令tensorboard --logdir=事件文件所在文件夹名 --port=6007
,通过浏览器查看可视化结果。
代码实现:
1.实例化SummaryWriter对象,保存到logs文件夹下
writer = SummaryWriter("logs")
2.调用所需要的方法
writer.add_image("test", img_array, 2, dataformats='HWC')
3.关闭writer
writer.close()
实现读取数据集中的图片或自己作图通过TensorBoard展示出来:
from torch.utils.tensorboard import SummaryWriter
import numpy as np
from PIL import Image
writer = SummaryWriter("logs")
img_path = "dataset/train/bees/16838648_415acd9e3f.jpg"
#读取的图像数据类型是JpegImageFile
img_PIL = Image.open(img_path)
#从PIL到numpy,需要在add_image()中指定shape中的每一个数字/维表示的含义
img_array = np.array(img_PIL)
print(type(img_array))
print(img_array.shape) #此处格式为(H, W, C)高度宽度通道形式
writer.add_image("test", img_array, 2, dataformats='HWC')
# y = 2x
#当标题不变时,将2x变为3x则会发生混乱,可以删除之前的事件文件,即可正常显示
for i in range(100):
writer.add_scalar("y=2x", 3*i, i)
#注意要记得close
writer.close()
在命令行中启动TensorBoard
#命令行运行命令
tensorboard --logdir=logs
文章来源:https://www.toymoban.com/news/detail-635462.html
到了这里,关于TensorBoard的使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!