读取多个图像作为 PyTorch 的自定义数据集?
Reading multiple images as custom dataset for PyTorch?
我想读入 main_image
组和 blur_image
组的多张图片。例如,5 张主图像和 5 张模糊图像。目标是确定卷积层中内核的什么值将主图像转换为模糊图像。假设是使用相同的内核对 5 个原始图像中的每一个进行模糊以产生 5 个模糊图像
我的代码位于:https://pastebin.com/PWf7rjd4 and https://pastebin.com/VxryDb7g
但是,它似乎只处理第一张图像,即主要图像和模糊图像的“1.png”。它不处理图像 2.png、3.png、4.png 和 5.png
我该如何解决这个问题?
在您的 class BlurDataset
中,您在 __getitem__
方法中只有 return 一张图像。在您的主要方法中,您调用
for batch_idx, (main, blur) in enumerate(train_loader)
你从中继承的 torch.utils.data.Dataset
class 然后用枚举给出的索引调用 __getitem__
。它会在循环的每次迭代中为您提供一对图片。如果你想在第一次迭代中获得所有 5 对图片,你必须更改你的 __getitem__
方法来循环图像和 return 它们。
我想读入 main_image
组和 blur_image
组的多张图片。例如,5 张主图像和 5 张模糊图像。目标是确定卷积层中内核的什么值将主图像转换为模糊图像。假设是使用相同的内核对 5 个原始图像中的每一个进行模糊以产生 5 个模糊图像
我的代码位于:https://pastebin.com/PWf7rjd4 and https://pastebin.com/VxryDb7g
但是,它似乎只处理第一张图像,即主要图像和模糊图像的“1.png”。它不处理图像 2.png、3.png、4.png 和 5.png
我该如何解决这个问题?
在您的 class BlurDataset
中,您在 __getitem__
方法中只有 return 一张图像。在您的主要方法中,您调用
for batch_idx, (main, blur) in enumerate(train_loader)
你从中继承的 torch.utils.data.Dataset
class 然后用枚举给出的索引调用 __getitem__
。它会在循环的每次迭代中为您提供一对图片。如果你想在第一次迭代中获得所有 5 对图片,你必须更改你的 __getitem__
方法来循环图像和 return 它们。