tensorboard的使用
tensorboard的简介
Tensorboard是tensorflow内置的一个可视化工具,它通过将tensorflow程序输出的日志文件的信息可视化使得tensorflow程序的理解、调试和优化更加简单高效。Tensorboard的可视化依赖于tensorflow程序运行输出的日志文件,因而tensorboard和tensorflow程序在不同的进程中运行
tensorboard的安装
本栏目上一篇中在anaconda中创建了用于pytorch的环境。我们继续,切换到pytorch环境进行安装。
执行 conda install tensorboard
进行安装
tensorboard的使用
导入所需模块 ;
from torch.utils.tensorboard import SummaryWriter
import numpy as np
from PIL import Image
创建实例并指定log目录
简介中说过了Tensorboard的可视化依赖于tensorflow程序运行输出的日志文件,所以在使用的开始,要制定存放运行文件的目录
writer = SummaryWriter('log')
读取图片
image_path = 'hymenoptera_data/train/bees/17209602_fe5a5a746f.jpg'
img_PIL = Image.open(image_path)
img_np_arr = np.array(img_PIL)
print(type(img_np_arr))
print(img_np_arr.shape)
writer.add_image('test', img_np_arr, 2, dataformats='HWC')
writer.close()
需要注意的是使用Image.open()打开的图像是PIL格式,在writer.add_image()函数中只支持以下三种格式,因此要通过numpy进行转换
还需要注意的是,照片的shape中的C(通道数)、H(高度)、W(宽度)的顺序,add_image()默认的是CHW格式,因为实验用的图片是HWC形式,因此要在add_image()时进行指明。
绘制函数
for i in range(100):
writer.add_scalar("y=x", 2*i, i)
writer.close()
查看绘制的图像
在conda的pytorch环境中执行 tensorboard --logdir=log --port=6007
点击本地连接,即可查看
完整代码
from torch.utils.tensorboard import SummaryWriter
import numpy as np
from PIL import Image
writer = SummaryWriter('log')
image_path = 'hymenoptera_data/train/bees/17209602_fe5a5a746f.jpg'
img_PIL = Image.open(image_path)
img_np_arr = np.array(img_PIL)
print(type(img_np_arr))
print(img_np_arr.shape)
#添加图片
writer.add_image('test', img_np_arr, 2, dataformats='HWC')
#描述y=x函数
for i in range(100):
writer.add_scalar("y=x", 2*i, i)
writer.close()