使用torch.utils.data.Dataset类 处理图片数据时,
1. 我们需要定义三个基本的函数,以下是基本流程
class our_datasets(Data.Dataset):
def __init__(self,root,is_resize=False,is_transfrom=False):
#这里只是个参考。按自己需求写。
self.root=root
self.is_resize=is_resize
self.is_transfrom=is_transfrom
self.imgs_list=...#这里建议保存的是 图片的路径 而不是 图片的数据
self.labs_list=...
def __getitem__(self, index):
img_path,lab=self.imgs_list[index],self.labs_list[index]
#这里使用PIL库读取图片数据.
img_data = Image.open(img_path).convert('RGB')
#这里看自己需要,可以不要
if self.is_resize:
img_data = img_data.resize((self.is_resize[0], self.is_resize[1]), Image.ANTIALIAS)
#但是数据转换建议加上,很多时候都会用到
if self.is_transfrom:
img_data=self.is_transfrom(img_data)
return img_data,lab
def __len__(self):