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)
点击链接
数据集像素特别低?
|