【Pytorch】torchvision中的数据集使用 - 学习笔记

32 篇文章 1 订阅
21 篇文章 2 订阅

视频网址

1 - 加载数据集:以CIFAR为例

网址
在这里插入图片描述
这里可以看看数据集的内容
在这里插入图片描述

1)如果没有下载数据集(不推荐)

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])

下载非常龟速…所以建议用迅雷下,在运行上面代码后可以发现输出一个网址https://www.cs.toronto.edu/~kriz/cifar-10-python.tar.gz,在迅雷中新建下载任务,把这个链接输入进去,几秒钟搞定!

2)已经下好了数据集
把数据集解压到dataset文件夹中,然后运行

import torchvision

train_set = torchvision.datasets.CIFAR10(root="./dataset", train=True, download=False)
test_set = torchvision.datasets.CIFAR10(root="./dataset", train=False, download=False)

print(test_set[0])

输出结果为

(<PIL.Image.Image image mode=RGB size=32x32 at 0x29625500BB0>, 3)

为了更好看到结果,我们设置一下断点鼠标左键
在这里插入图片描述
我们来看看test_set[0]输出的两个参数:img和target分别是什么,接着上面的代码,输入

img, target = test_set[0]
print(img)
print(target) # label
print(test_set.class[target]) # 看看输出是什么类型
img.show() # 看看图片长啥样

输出

D:\Anaconda3\envs\pytorch\python.exe D:/研究生/代码尝试/P10_dataset_transform.py
(<PIL.Image.Image image mode=RGB size=32x32 at 0x10CDF470BB0>, 3)
['airplane', 'automobile', 'bird', 'cat', 'deer', 'dog', 'frog', 'horse', 'ship', 'truck']
<PIL.Image.Image image mode=RGB size=32x32 at 0x10CDF470BB0>
3
cat

进程已结束,退出代码为 0

在这里插入图片描述
隐隐约约可以看出来是猫

2 - 使用Transform

import torchvision
from torch.utils.tensorboard import SummaryWriter

# 设置transform, PIL -> Tensor
dataset_transform = torchvision.transforms.Compose([
    torchvision.transforms.ToTensor()
])

train_set = torchvision.datasets.CIFAR10(root="./dataset", train=True, transform=dataset_transform, download=False)
test_set = torchvision.datasets.CIFAR10(root="./dataset", train=False, transform=dataset_transform, download=False)

# print(test_set[0])
# print(test_set.classes)
#
# img, target = test_set[0]
# print(img)
# print(target)
# print(test_set.classes[target])
# img.show()

# 使用Tensorboard显示
writer = SummaryWriter("p10")
for i in range(10):
    img, target = test_set[i]
    writer.add_image("test_set", img, i)

writer.close()

打开tensorboard,显示
在这里插入图片描述
通过左右移动,可以看到不同的step的图片不一样~

Tips:如果数据集没有给下载地址,可以在dataset点击ctrl+鼠标左键,找到源码,查看下载地址~

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值