本文主要是介绍Pytorch——torchvision.datasets,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
torchvision 是PyTorch中专门用来处理图像的库,这个包中有四个大类。
- torchvision.datasets
- torchvision.models
- torchvision.transforms
- torchvision.utils
torchvision.datasets 是用来进行数据加载的,PyTorch团队在这个包中提前处理好了很多很多图片数据集。
- MNIST
- COCO(用于图像标注和目标检测)(Captioning and Detection)
- LSUN Classification
- ImageFolder
- Imagenet-12
- CIFAR10 and CIFAR100
- STL10
以CIFAR10数据集为例:
import torchvision
代码样式
dset.CIFAR10(root, train=True, transform=None, target_transform=None, download=False)
参数说明
- root: 将该数据集存于哪个文件
- train:导入数据集类别(True
= 训练集, False
= 测试集)
-transform:默认是将数据导入为PIL格式,可以调用transform对图片进行处理
- download : True
= 从互联上下载数据,并将其放在root
目录下
如果数据集已经下载,什么都不干。
代码示例
train_set = torchvision.datasets.CIFAR10(root="./dataset", train=True, transform=dataset_t, download=True)
test_set = torchvision.datasets.CIFAR10(root="./dataset", train=False, download=True)
代码说明
root="./dataset":这里使用的是相对路径
dataset_t:对图片进行处理,需要提前定义
dataset_t = torchvision.transforms.Compose([torchvision.transforms.ToTensor()
])
训练集将数据转换为了tensor格式,测试集未作改动,但平时使用的2个操作要保持一致,这里只是为了展示。
对前10张图片用进行展示
from torch.utils.tensorboard import SummaryWriter
writer = SummaryWriter("logs")
for i in range(10):img, label = train_set[i]writer.add_image("train_img", img, i)
writer.close()
使用torchboard查看
打开Terminal,输入
tensorboard --logdir=logs
结果
TensorFlow installation not found - running with reduced feature set.
Serving TensorBoard on localhost; to expose to the network, use a proxy or pass --bind_all
TensorBoard 2.7.0 at http://localhost:6006/ (Press CTRL+C to quit)
点击链接
数据集像素特别低
这篇关于Pytorch——torchvision.datasets的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!