【计算机视觉网络训练技巧】你知道你拿什么图片在训练吗?训练图片可视化简易版

本文介绍了如何在数据增广后保存图片以便观察网络输入的原始状态,只需在Timm训练代码中添加3处修改,展示了创建保存路径、处理Tensor到PIL图像及在训练时保存图片的过程。后续将探讨更高级的可视化方法,如WandB特征可视化。
摘要由CSDN通过智能技术生成

以下是一张图片,数据增广之后的示意图:
在这里插入图片描述
问题是这样的,当数据增广后,我们怎么知道图片变成什么样了呢,或者说我们输入到网络中的图片长什么样?对,解法很简单,就是在图片输入到网络时,把图片保存一下。

这里特把此过程记录一下,大家也可以参考下,快速展示训练input图片,在训练代码中修改3处即可,这里举例是基于timm训练代码框架,其他的也是一样,只要input_batchTensor的格式,即可以用这个方法。三处如下:

  1. 创建路径以及保存图片的函数
count = 0
save_path = r"./output/train_picture"
if os.path.exists(save_path):
    shutil.rmtree(save_path)
os.makedirs(save_path, exist_ok=True)


def save_train_picture(input_batch):
    global count, save_path
    from torchvision import transforms
    from PIL import Image
    input_len = len(input_batch)
    for input in input_batch:
        tensor_to_pil = transforms.ToPILImage()(input)
        tensor_to_pil.save(os.path.join(save_path, f"saved_image_{count}.png"))
        count += 1
  1. 训练时保存图片

训练取数据时加上两行代码,表示保存并不经过以下训练,即只是保存训练图片。
在这里插入图片描述
3. 结束后跳出程序

循环之后结束程序即可。
在这里插入图片描述

以上就是三步搞定可视化训练图片,后续会继续研究可视化,如基于wandb的特征可视化,均为简易可操作版,敬请期待~

∼ O n e   p e r s o n   g o   f a s t e r ,   a   g r o u p   o f   p e o p l e   c a n   g o   f u r t h e r ∼ \sim_{One\ person\ go\ faster,\ a\ group\ of\ people\ can\ go\ further}\sim One person go faster, a group of people can go further

  • 7
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Thomas_Cai

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值