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)
复制代码
我们通过输出测试集的第一个内容,得到一个样本包含的内容:(图像,标签)

数据集内容赋值

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

复制代码
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")使得代码更具可移植性。
相关推荐
脚踏实地,坚持不懈!几秒前
Android 电池健康度检测全流程(驱动 → 内核 → HAL → Framework)
android·linux
IT技术分享社区3 分钟前
在 Windows 上跑未改动的 Linux 程序:微软 LiteBox v0.1 把这件事变简单了
linux·运维·windows·microsoft·开源
全栈道4 分钟前
AI 时代,软件开发应该如何学习
人工智能·学习
YOLO数据集集合4 分钟前
遥感滑坡图像识别数据集 | 滑坡识别 遥感影像 语义分割 灾害监测 无人机航拍 目标检测 深度学习数据集 计算机视觉9172期
人工智能·yolo·目标检测·计算机视觉·无人机·滑坡
FPGA信号处理8 分钟前
【凸优化】第一节课(下):保凸运算、分离超平面与 Farkas 引理
人工智能·算法·机器学习
迪康妍妍12 分钟前
终端安全实战:用迪康终端安全管理系统实现U盘四分档管控与全量审计
android·运维·网络·安全·电脑
stsdddd14 分钟前
v11扑克牌数字检测数据集8992张实测:标注质量与划分比例一览
人工智能·计算机视觉·目标跟踪
商业白皮书16 分钟前
2026年上海豆包DeepSeekKimi百度AI通义千问GEO服务商选择
人工智能·笔记
Qt云程序员16 分钟前
按钮是图片、系统没接口?我用找图加OCR把它自动化了
运维·自动化·ocr
马剑威(威哥爱编程)24 分钟前
【AI全栈后端12-09】Spring Boot 用流式输出做打字机对话:点下去不再干等
java·人工智能·spring boot·后端