首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何获取我在Pytorch中放入Dataloader的图像的文件名

在PyTorch中,要获取放入Dataloader的图像的文件名,可以通过自定义数据集类来实现。以下是一个示例:

代码语言:txt
复制
import os
from PIL import Image
from torch.utils.data import Dataset, DataLoader

class CustomDataset(Dataset):
    def __init__(self, root_dir):
        self.root_dir = root_dir
        self.file_list = os.listdir(root_dir)

    def __len__(self):
        return len(self.file_list)

    def __getitem__(self, idx):
        img_name = self.file_list[idx]
        img_path = os.path.join(self.root_dir, img_name)
        image = Image.open(img_path)
        # 其他数据预处理操作...

        return image, img_name

# 假设图像文件存放在'./images'目录下
dataset = CustomDataset('./images')
dataloader = DataLoader(dataset, batch_size=32, shuffle=True)

for images, filenames in dataloader:
    # images为图像数据,filenames为对应的文件名
    for filename in filenames:
        print(filename)

在上述代码中,首先定义了一个自定义数据集类CustomDataset,其中root_dir参数为图像文件所在的根目录。在__getitem__方法中,通过索引idx获取对应位置的图像文件名img_name,然后拼接成完整的图像路径img_path。最后,返回图像数据和文件名作为一个样本。

在使用DataLoader加载数据时,可以同时获取图像数据和文件名。在示例中,通过for循环遍历dataloader,每次迭代时,filenames变量即为当前批次图像对应的文件名列表。你可以根据需要进一步处理这些文件名。

请注意,上述示例中并未提及具体的腾讯云产品,因为获取图像文件名与云计算品牌商无直接关联。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券