欢迎访问宙启技术站
智能推送

使用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语句展示了总样本数和 个数据样本的形状以及标签信息。