为什么使用plt.imshow(image[0][0], cmap=“gray”)而不是image[0]
你的张量形状是 torch.Size([256, 1, 28, 28]),其中:
- 256 表示批次(batch)中有 256 张图像,
- 1 表示每张图像只有 1 个通道(即灰度图),
- 28, 28 是图像的高度和宽度。
当你使用 image[0] 时,你取出了批次中的第一张图像,此时其形状是 [1, 28, 28]。而 image[0][0] 则进一步取出了这一张图像的第一个(也是唯一一个)通道,得到的结果形状为 [28, 28]。这正好是 plt.imshow 显示灰度图所需要的二维数组格式