在PyTorch中读取图片有多种方法,常用的方法是使用torchvision
库中的ImageFolder
和DataLoader
类。首先,需要将图片数据集组织成以下格式:一个文件夹包含所有的类别文件夹,每个类别文件夹包含该类别的图片。
import torch
from torchvision import transforms
from torchvision.datasets import ImageFolder
from torch.utils.data import DataLoader
# 定义数据转换
transform = transforms.Compose([
transforms.Resize((224, 224)),
transforms.ToTensor()
])
# 读取图片数据集
dataset = ImageFolder(root='path_to_dataset', transform=transform)
# 创建数据加载器
dataloader = DataLoader(dataset, batch_size=32, shuffle=True)
# 遍历数据加载器
for images, labels in dataloader:
# 进行模型训练或其他操作
pass
在上面的代码中,首先定义了一个数据转换transform
,然后使用ImageFolder
类加载图片数据集,最后创建了一个数据加载器dataloader
用于批量加载数据。通过遍历数据加载器,可以获得每个batch的图片数据和对应的标签。