Torchvision.dataset CIFAR等数据集使用

import torchvision

train_set = torchvision.datasets.CIFAR10(root="./dataset",train=True,download=True)
test_set = torchvision.datasets.CIFAR10(root="./dataset",train=False,download=True)
print(test_set[0])###我们通过输出测试集的第一个内容,得到一个样本包含的内容:(图像,标签)
print(test_set.classes)
img,target = test_set[0]
print(img)
print(target)
复制代码
我们通过输出测试集的第一个内容,得到一个样本包含的内容:(图像,标签)

数据集内容赋值

然后一次性地将这两个元素分别赋值给imgtarget变量。

img,target = test_set[0]

print(test_set.classes[target])

Dataset 与Transforms 合理合并使用

import torchvision
dataset_transforms = torchvision.transforms.Compose([
    torchvision.transforms.ToTensor(),
    torchvision.transforms.RandomCrop(18)
])
train_set = torchvision.datasets.CIFAR10(root="./dataset",train=True,transform=dataset_transforms,download=True)
test_set = torchvision.datasets.CIFAR10(root="./dataset",train=False,transform=dataset_transforms,download=True)
print(test_set[0])

使用Tensorboard 检视数据集图像

创建一个SummaryWriter对象,用于写入TensorBoard日志。"p10"是日志文件的保存路径

writer = SummaryWriter("p10")
  1. for i in range(10):

    • 循环遍历测试集的前10个样本
  2. img, target = test_set[i]

    • 从测试集中获取第i个样本的图像和标签
  3. writer.add_image("Testset前十张图片", img, i)

    • 将图像添加到TensorBoard日志中
    • "Testset前十张图片"是图像组的名称
    • img是图像数据
    • i是图像的步骤(step)或索引

    for i in range(10):
    img,target = test_set[i]
    writer.add_image("Testset前十张图片",img,i)

add_image定义:

def add_image(
        self, tag, img_tensor, global_step=None, walltime=None, dataformats="CHW"
    ):

目录设置

目录的设置 root="./dataset" 有特定的含义和用途:

  1. ./ 表示当前目录:

    在这个上下文中,它指的是你运行Python脚本的目录。

  2. dataset 是一个文件夹名:

    这表示数据集将被下载并存储在当前目录下名为 "dataset" 的文件夹中。

  3. 相对路径的优势:

    • 使用相对路径 "./dataset" 而不是绝对路径(如 "C:/Users/YourName/dataset")使得代码更具可移植性。
相关推荐
pk_xz12345643 分钟前
Shell 脚本中变量和字符串的入门介绍
linux·运维·服务器
小珑也要变强1 小时前
Linux之sed命令详解
linux·运维·服务器
深度学习实战训练营1 小时前
基于CNN-RNN的影像报告生成
人工智能·深度学习
昨日之日20063 小时前
Moonshine - 新型开源ASR(语音识别)模型,体积小,速度快,比OpenAI Whisper快五倍 本地一键整合包下载
人工智能·whisper·语音识别
Lary_Rock3 小时前
RK3576 LINUX RKNN SDK 测试
linux·运维·服务器
浮生如梦_3 小时前
Halcon基于laws纹理特征的SVM分类
图像处理·人工智能·算法·支持向量机·计算机视觉·分类·视觉检测
深度学习lover3 小时前
<项目代码>YOLOv8 苹果腐烂识别<目标检测>
人工智能·python·yolo·目标检测·计算机视觉·苹果腐烂识别
热爱跑步的恒川4 小时前
【论文复现】基于图卷积网络的轻量化推荐模型
网络·人工智能·开源·aigc·ai编程
云飞云共享云桌面5 小时前
8位机械工程师如何共享一台图形工作站算力?
linux·服务器·网络
Peter_chq5 小时前
【操作系统】基于环形队列的生产消费模型
linux·c语言·开发语言·c++·后端