我想加载灰度图像的数据集。我使用过ImageFolder,但默认情况下不会加载灰色图像,因为它将图像转换为 RGB。
我找到了使用 ImageFolder 加载图像并在灰度转换图像后使用的解决方案:
transforms.Grayscale(num_output_channels=1)
Run Code Online (Sandbox Code Playgroud)
或者
ImageOps.grayscale(image)
Run Code Online (Sandbox Code Playgroud)
这是对的吗?如何在不进行转换的情况下加载灰度图像?我尝试了ImageDataBunch,但导入时遇到问题fastai.vision
在Torchvision中使用MNIST数据集时出现以下错误
RuntimeError: output with shape [1, 28, 28] doesn't match the broadcast shape [3, 28, 28]
Run Code Online (Sandbox Code Playgroud)
这是我的代码:
import torch
from torchvision import datasets, transforms
transform = transforms.Compose([transforms.ToTensor(),
transforms.Normalize((0.5, 0.5, 0.5), (0.5, 0.5, 0.5)),
])
trainset = datasets.MNIST('~/.pytorch/MNIST_data/', download=True, train=True, transform=transform)
trainloader = torch.utils.data.DataLoader(trainset, batch_size=64, shuffle=True)
images, labels = next(iter(trainloader))
Run Code Online (Sandbox Code Playgroud)