在PyTorch中,加載圖片數(shù)據(jù)通常需要使用torchvision
庫中的datasets
和transforms
模塊。以下是一個簡單的示例代碼,演示如何加載圖片數(shù)據(jù):
import torch
from torchvision import datasets, transforms
# 定義數(shù)據(jù)轉(zhuǎn)換
transform = transforms.Compose([
transforms.Resize((224, 224)), # 將圖片大小調(diào)整為224x224
transforms.ToTensor(), # 將圖片轉(zhuǎn)換為Tensor格式
transforms.Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225]) # 對圖片進行標(biāo)準(zhǔn)化
])
# 加載數(shù)據(jù)集
train_data = datasets.ImageFolder(root='path/to/train_dataset', transform=transform)
test_data = datasets.ImageFolder(root='path/to/test_dataset', transform=transform)
# 創(chuàng)建數(shù)據(jù)加載器
train_loader = torch.utils.data.DataLoader(train_data, batch_size=64, shuffle=True)
test_loader = torch.utils.data.DataLoader(test_data, batch_size=64, shuffle=False)
# 遍歷數(shù)據(jù)加載器
for images, labels in train_loader:
# 處理圖片數(shù)據(jù)
pass
在上述代碼中,首先定義了數(shù)據(jù)轉(zhuǎn)換transform
,然后使用ImageFolder
類加載了訓(xùn)練集和測試集的圖片數(shù)據(jù),并通過DataLoader
創(chuàng)建了數(shù)據(jù)加載器。最后,可以通過遍歷數(shù)據(jù)加載器來處理圖片數(shù)據(jù)。