使用DatasetFromFolder()函数生成文件夹数据集的Python代码示例
发布时间:2023-12-24 07:37:06
生成文件夹数据集的Python代码示例如下所示:
import torch
from torchvision.transforms import transforms
from torchvision.datasets import DatasetFolder
# 定义数据预处理
transform = transforms.Compose([
transforms.Resize((224, 224)),
transforms.ToTensor(),
transforms.Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225])
])
# 使用DatasetFolder函数生成文件夹数据集
dataset = DatasetFolder(root='data_folder', loader=torch.load, extensions='.pt', transform=transform)
# 使用dataset的方式访问数据
total_samples = len(dataset)
print(f"Total samples: {total_samples}")
# 取 个数据样本进行展示
data, label = dataset[0]
print(f"Data shape: {data.shape}")
print(f"Label: {label}")
在上述代码示例中,我们首先导入了torch和torchvision中必要的模块,然后定义了数据的预处理方式,包括图像大小调整、转换为张量、以及标准化处理。
接下来我们使用DatasetFolder函数生成文件夹数据集,需要指定三个参数:root表示数据文件夹的根目录,loader用于加载数据文件的函数,extensions指定数据文件的扩展名。在本例中,我们假设数据文件是以.pt后缀保存的PyTorch张量文件。
生成数据集后,我们可以通过索引访问特定的数据样本,其中返回的data表示处理后的数据,label表示对应的标签。
最后,我们使用print语句展示了总样本数和 个数据样本的形状以及标签信息。
