# 功能为从写好的CSV文件中读取数据集图片和骨架节点,标签
# coding: utf-8
from PIL import Image
from torch.utils.data import Dataset
class MyDataset(Dataset):
def __init__(self, txt_path, transform = None, target_transform = None):
fh = open(txt_path, 'r')
imgs = []
skeletons = []
for line in fh:
line = line.rstrip()
# rstrip()方法作用为删除字符串末尾的空格和换行符
words = line.split(',') # 以‘,‘为分隔符,分割一行数据
# print(words[1])
imgs.append((words[1], words[39]))
skeletons.append((words[2:38]))
# self.imgs = imgs
# self.transform = transform
# self.target_transform = target_transform
def __getitem__(self, index):
label, fn = self.imgs[index]
img = Image.open(fn).convert('RGB')
skeleton = skeletons[index]
return img,skeleton,label
# fn, label = self.imgs[index]
# img = Image.open(fn).convert('RGB')
# if self.transform is not None:
# img = self.transform(img)
# return img, label
def __len__(self):
return len(self.imgs)
mydataset = MyDataset('/home/shuaishuai/文档/实验数据/行为识别/snippets/total.csv')