参考资料:点击跳转
前言
torchvision独立于pytorch,专门用来处理图像,通常用于计算机视觉领域。
安装:
pip install torchvision
torchvision最常用的三个包:
models
:提供了很多常用的训练好的网络模型,我们可以直接加载并使用,如Alexnet、ResNet等。datasets
:提供了(1)一些常用的图片数据集,如MNIST、COCO等(2)加载自己的数据集的常用方法,目前只有DatasetFolder、ImageFolder、VisionDataset三个方法。transforms
:提供了一些常用的图像转换处理操作,主要针对Tensor或PIL Image类型的数据进行操作。
完整代码
import torchvision
from torch.utils.tensorboard import SummaryWriter
dataset_transform = torchvision.transforms.Compose([torchvision.transforms.ToTensor()])
# 后面要对数据做一个预处理,做一次transform的变化,这里的意思是,先建立一个工具,在后面的dataset当中,加入这个工具,直接就可以做预处理了,本例是将原始数据转为tensor类型
# CIFAR数据集中的数据,类型是PIL,需要转为tensor,才能进行处理
train_set = torchvision.datasets.CIFAR10(root="./dataset", train=True, transform=dataset_transform, download=True)
# 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=True)
# 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()
print(test_set[0])
writer = SummaryWriter("p10")
for i in range(10):
img, target = test_set[i]
writer.add_image("test_set", img, i)
writer.close()
回顾之前相关的内容:
自学深度学习pytorch——Day3 Tensorboard
Day4 Torchvision 中的Transforms(一)
Day5 Transforms(二)含运行结果展示