前提准备:蚂蚁蜜蜂数据集
程序:
from torch.utils.data import Dataset
import os
from PIL import Image
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(root_dir, label_dir)#合并路径
self.img_path = os.listdir(self.path)#获取数据路径,组成一个列表
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 = "ants"
ants_dataset = Mydata(root_dir, ants_label)
# 查看一下第一个标签
img, label = ants_dataset[0]
img.show();
bees_label = "bees"
bees_dataset = Mydata(root_dir, bees_label)
#将ants和bees数据加起来
dataset = ants_dataset + bees_dataset
print(len(ants_dataset))
print(len(bees_dataset))
print(len(dataset))
数据集确实可以显示
看到数据集确实加起来了