Pytorch学习03_TensorBoard使用02

Opencv读取图片,获得numpy型数据类型

复制图片的相对路径

目前这种type不适用,考虑用numpy类型

安装opencv,在pytorch环境下

pip install opencv-python

导入numpy

import numpy as np

将PIL类型的img转换为 NumPy 数组

img_array=np.array(img)

HWC三通道

H:高度 W:宽度 C:通道

复制代码
from torch.utils.tensorboard import SummaryWriter
import numpy as np
from PIL import Image

writer = SummaryWriter("logs")
image_path="dataset/train/ants_image/0013035.jpg"
img_PIL=Image.open(image_path)
img_array=np.array(img_PIL)
print(type(img_array))
print(img_array.shape)

writer.add_image("test",img_array,1,dataformats='HWC')


# for i in range(100):
#     writer.add_scalar("y=2x",3*i,i)

writer.close()

从PIL到numpy,需要在add_image()中指定shape中每一个数字/维表示的含义

终端运行

tensorboard --logdir=logs --port=6007

点击蓝色链接

点击"IMAGES"

来到

修改一下

使用另一张图片的路径,运行

复制代码
from torch.utils.tensorboard import SummaryWriter
import numpy as np
from PIL import Image

writer = SummaryWriter("logs")
image_path="dataset/train/ants_image/0013035.jpg"
img_PIL=Image.open(image_path)
img_array=np.array(img_PIL)
print(type(img_array))
print(img_array.shape)

# writer.add_image("test",img_array,1,dataformats='HWC')
writer.add_image("test",img_array,2,dataformats='HWC')


# for i in range(100):
#     writer.add_scalar("y=2x",3*i,i)

writer.close()

回到网站,进行刷新

刷新后

拖动滑轮进行图片查看

拖到左边后,可以看到之前的图片

更换标签

复制代码
from torch.utils.tensorboard import SummaryWriter
import numpy as np
from PIL import Image

writer = SummaryWriter("logs")
# image_path="dataset/train/ants_image/0013035.jpg"
image_path="dataset/train/ants_image/5650366_e22b7e1065.jpg"
img_PIL=Image.open(image_path)
img_array=np.array(img_PIL)
print(type(img_array))
print(img_array.shape)

# writer.add_image("test",img_array,1,dataformats='HWC')
# writer.add_image("test",img_array,2,dataformats='HWC')
writer.add_image("train",img_array,1,dataformats='HWC')


# for i in range(100):
#     writer.add_scalar("y=2x",3*i,i)

writer.close()

运行后来到网站查看

参考

【PyTorch深度学习快速入门教程(绝对通俗易懂!)【小土堆】】 https://www.bilibili.com/video/BV1hE411t7RN/?p=9\&share_source=copy_web\&vd_source=be33b1553b08cc7b94afdd6c8a50dc5a

相关推荐
肾透侧视攻城狮10 分钟前
《从fit()到分布式训练:深度解锁TensorFlow模型训练全栈技能》
人工智能·深度学习·tensorflow 模型训练·模型训练中的fit方法·自定义训练循环·回调函数使用·混合精度/分布式训练
索木木23 分钟前
大模型训练CP切分(与TP、SP结合)
人工智能·深度学习·机器学习·大模型·训练·cp·切分
前路不黑暗@25 分钟前
Java项目:Java脚手架项目的 C 端用户服务(十五)
java·开发语言·spring boot·学习·spring cloud·maven·mybatis
喵手34 分钟前
Python爬虫实战:增量爬虫实战 - 利用 HTTP 缓存机制实现“极致减负”(附CSV导出 + SQLite持久化存储)!
爬虫·python·爬虫实战·零基础python爬虫教学·增量爬虫·http缓存机制·极致减负
DevilSeagull41 分钟前
C语言: 动态内存管理
人工智能·语言模型·自然语言处理
一个处女座的程序猿O(∩_∩)O1 小时前
Python异常处理完全指南:KeyError、TypeError、ValueError深度解析
开发语言·python
was1721 小时前
使用 Python 脚本一键上传图片到兰空图床并自动复制链接
python·api上传·自建图床·一键脚本
破晓之翼1 小时前
从第一性原理和工程控制论角度企业去思考AI开发避免完美主义陷阱
人工智能
njsgcs1 小时前
屏幕元素定位(Grounding) ollama两个模型
人工智能
码农杂谈00071 小时前
企业 AI 推理:告别黑箱决策,4 步构建可解释 AI 体系
大数据·人工智能