1

我尝试修改此示例代码,在此处为我自己的数据集输入 DCGAN 的链接描述。示例代码适用于 RGB 图像,但我的数据是灰度图像。因此,我将通道数“nc”的值设置为 1。但是,当我尝试运行程序时,出现错误:RuntimeError: Given groups=1, weight of size 64 1 4 4, expected input[128, 3, 64, 64] 有 1 个通道,但有 3 个通道。我确实知道这是关于频道数量的问题,但我不知道我还应该改变什么来解决这个错误。

任何帮助,将不胜感激!

4

2 回答 2

0

3您正在传递带有通道的 RGB 图像。你应该通过形状张量,[batch, 1, width, height]而你的显然是[128, 3, 64, 64](并且应该是[128, 1, 64, 64])。

print(image.shape)验证您通过属性输入图像形状

如果您使用torchvisionpillow在引擎盖下),您可以使用torchvision.transforms.Grayscale()(请参阅文档)。还要验证您的图像确实是灰度的。

于 2020-05-09T16:00:16.040 回答
0

您输入的实际形状是什么?我的猜测是您将图像加载为标准 RGB,即使它们真的是灰度图像,也会将它们加载为 3 通道图像。

于 2020-05-10T05:24:02.043 回答