Pytorch中怎么安装和利用Tensorboard观察数据
Admin 2022-06-18 群英技术资讯 719 次浏览
有两个常用的方法:
add_scalar()
显:示曲线add_image()
显示图像首先安装Tensorboard
在你的编译环境(conda activate XXX
)中输入命令
pip install tensorboard
from torch.utils.tensorboard import SummaryWriter #调包 writer = SummaryWriter('logs') # 这里你创建了一个logs的文件装你的add_scalar生成的曲线, #其中writer.add_scalar()第一个量是曲线的名字, #第二个量是纵坐标scalar_value,第三个量是横坐标global_step(也可以理解为损失值得步长) for i in range(100): writer.add_scalar("quadratic", i ** 2, i) writer.close()
打开这个Tensorboard文件
tensorboard --logdir=logs #1.这个logdir的文件名必须要与之前所创建的文件名一致,不然很容易报错,No dashboards are active for the current data set. #2.这个tensorboard输入的命令,必须是在logs文件的上一层文件中,不然也很容易报错,No dashboards are active for the current data set.
结果现实:
注意:add_image()
中函数一般有三个量:
第一个是图像的名字,第二个是图像(必须是tensor或者numpy.ndarray),第三个是步长(可理解为训练或者测试阶段到哪幅图像了);
其中,图像的shape
必须是CHW,但是有opencv
读取的图像shape
是HWC,
所以得使用dataformats
转换以下将图像的shape转换为HWC
下面的代码测试了两张图(一张是来自aligned
的图像,一张是来自original
的图像)用来模拟训练或者测试阶段程序运行到哪张图
from torch.utils.tensorboard import SummaryWriter import cv2 writer = SummaryWriter('logs') aligned_img_path = "D:\\data\\basic\\Image\\aligned\\test_0001_aligned.jpg" original_img_path = "D:\\data\\basic\\Image\\original\\test_0001.jpg" aligned_img = cv2.imread(aligned_img_path) original_img = cv2.imread(original_img_path) print(type(aligned_img)) # numpy print(aligned_img.shape) # writer.add_image("img", aligned_img, 1, dataformats='HWC') #此图已经在我第一次测试add_image()用过了 writer.add_image("img", original_img, 2, dataformats='HWC')#此图是我在第二个测试 writer.close()
实现结果:
tensorboard中出现了IMAGES,并且step1是aligned的图,而step2是original的图
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
Python 语言参考手册描述了具体语法和语义,并介绍了与 Python 一起发布的标准库。本文还描述了发行版中通常包含的一些可选组件。
应用场景举例描述: Lock 互斥锁:举例说明-C有三个同事同时需要上厕所,但是只有一间厕所,将同事比作进程,多个进程并打抢占一个厕所,我们要保证顺序优先, 一个个来,那么就必须串行,先到先得,有人使用了,就锁住,结束后剩余的人继续争抢
这篇文章主要介绍了Python最大连续区间和动态规划,文章围绕Python最大连续区间和动态规划的相关资料展开内容,需要的小伙伴可以参考一下
这篇文章主要介绍了Python机器学习三大件之一numpy,文中有非常详细的代码示例,对正在学习python的小伙伴们有很好地帮助哟.需要的朋友可以参考下
本文主要介绍了Python中的枚举函数enumerate()的具体用法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008