【pytorch】tensorboard + transforms的使用

一、tensorboard的使用
  1. 加载一张图片转化为tensor类型,并通过tenboard可视化
python 复制代码
from PIL import Image
from torch.utils.tensorboard import SummaryWriter
from torchvision import transforms

img_path = "dataset/train/ants_image/0013035.jpg"

img = Image.open(img_path)

#print(img)
writer = SummaryWriter('logs')

tensor_trans = transforms.ToTensor()
tensor_img = tensor_trans(img)

writer.add_image("Tesnor_img",tensor_img)

#print(tensor_img)

writer.close()


#在Terminal中输入 tensorboard --logdir=logs
二、transforms的常用函数

细心的小伙伴已发现了,上面已经使用了transforms了,我们在添加图片时,用到了ToTensor()这个函数。

ToTensor()函数:

将一个PIL类型转换成tensor类型;

python 复制代码
#totensor
tensor_trans = transforms.ToTensor()
tensor_img = tensor_trans(img)
writer.add_image("to_Tesnor",tensor_img)
print(tensor_img)

Normalize() 函数:

用于归一化,使他的范数或者数值在一定的范围。

python 复制代码
#normalize
trnas_norm = transforms.Normalize([0.5,0.5,0.5],[0.5,0.5,0.5])
img_norm = trnas_norm(tensor_img)
print(img_norm[0][0][0])

writer.add_image("normalize",img_norm)

Resize()函数:

用来调整数组大小。

python 复制代码
#resize
print(img)
trans_resize = transforms.Resize((512,512))
img_resize = trans_resize(img)

img_resize = tensor_trans(img_resize)

writer.add_image("resize",img_resize,0)
print(img_resize)

Compose()函数:

简单来说就是将各种操作就行联合起来进行操作,注意操作顺序。

python 复制代码
#compose
trans_resize_2 = transforms.Resize(512)

trans_compose = transforms.Compose([trans_resize_2,tensor_trans])
img_resize_2 = trans_compose(img)
writer.add_image("resize",img_resize_2,1)

RandomCrop()函数:

随机裁剪函数,看效果,这里只展示了一步。

python 复制代码
#randomcrop
trans_random = transforms.RandomCrop(128)

trans_compose_2 = transforms.Compose([trans_random,tensor_trans])

for i in range(10):
    img_crop = trans_compose_2(img)
    writer.add_image("Randomcrop",img_crop,i)


writer.close()

tensorboard配合transforms就是pytorch学习中的两大利器

相关推荐
WLJT123123123几秒前
生活电器:重构家居体验的产业变革与发展探索
大数据·人工智能·科技·生活
~~李木子~~几秒前
聚类算法实战:从 KMeans 到 DBSCAN
人工智能·机器学习·支持向量机
Python×CATIA工业智造26 分钟前
Python函数包装技术详解:从基础装饰器到高级应用
python·pycharm
落羽的落羽42 分钟前
【Linux系统】从零掌握make与Makefile:高效自动化构建项目的工具
linux·服务器·开发语言·c++·人工智能·机器学习·1024程序员节
应用市场1 小时前
VSCode + AI Agent实现直接编译调试:告别Visual Studio的原理与实践
人工智能·vscode·visual studio
GIS数据转换器1 小时前
城市基础设施安全运行监管平台
大数据·运维·人工智能·物联网·安全·无人机·1024程序员节
快秃头的码农1 小时前
LazyLLM,(万象应用开发平台 AppStudio)商汤大装置
python
遇雪长安1 小时前
深度学习YOLO实战:4、模型的三要素:任务、类别与规模
人工智能·深度学习·yolo
搞科研的小刘选手1 小时前
【云计算专题会议】第二届云计算与大数据国际学术会议(ICCBD 2025)
大数据·人工智能·物联网·5g·云计算·6g·智能通信
电商软件开发 小银1 小时前
微信生态新机遇:视频号推客模式助力商家突围
大数据·人工智能·twitter·系统开发·实体店转型·数字化经济·视频号推客模式