Dateset类读取数据
Dateset类读取数据
蚂蚁蜜蜂分类数据集和下载连接https://download.pytorch.org/tutorial/hymenoptera_data.zip
from torch.utils.data import Dataset
from PIL import Image
import os
class MyData(Dataset):
def __init__(self, root_dir, label_dir):
self.root_dir = root_dir
self.label_dir = label_dir
#目标数据集地址
self.path = os.path.join(self.root_dir, self.label_dir)
#目标数据集所有图片的名称
self.img_path = os.listdir(self.path)
# 获取图片
#__getitem__ 方法是 Dataset 类的核心,它定义了如何访问数据集的每个元素。每次当你通过索引访问数据集时,都会调用这个方法。
def __getitem__(self, idx):
img_name = self.img_path[idx]
img_item_path = os.path.join(self.root_dir, self.label_dir, img_name)
img = Image.open(img_item_path)
label = self.label_dir
return img, label
def __len__(self):
return len(self.img_path)
root_dir = "dataset/train"
ants_label_dir = "ants"
ants_dataset = MyData(root_dir, ants_label_dir)
img, label = ants_dataset[1]
img.show()
print(label)

浙公网安备 33010602011771号