1 Star 0 Fork 0

gisleung/py_pytorch_learn

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
002 read_data.py 1.34 KB
一键复制 编辑 原始数据 按行查看 历史
gisleung 提交于 2022-04-01 20:26 . 复习完毕
"""
Dataset: 创建数据集
"""
import os.path
import time
from torch.utils.data import Dataset
from PIL import Image
# 继承 Dataset 类
class MyData(Dataset):
# 重写构造函数:为整个class提供全局变量
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)
print(self.img_path)
# 使该类可以通过 对象[index] 获取指定元素
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
# 使该类可以通过 len(对象) 获取列表长度
def __len__(self):
return len(self.img_path)
root_dir = "dataset/train" # 也可写成 "dataset\\train"
ants_label_dir = "ants"
bees_label_dir = "bees"
ants_dataset = MyData(root_dir, ants_label_dir)
bees_dataset = MyData(root_dir, bees_label_dir)
img, label = ants_dataset[1]
img.show() # 打开图片
print('图片标签:%s' % label) # 查看标签
# 拼接两个数据集
train_dataset = ants_dataset + bees_dataset
time.sleep(2)
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/gisleung/py_pytorch_learn.git
git@gitee.com:gisleung/py_pytorch_learn.git
gisleung
py_pytorch_learn
py_pytorch_learn
master

搜索帮助

0d507c66 1850385 C8b1a773 1850385