reshape`(1, 1, 28, 28)` 是什么意思

what does reshape`(1, 1, 28, 28)` mean

我正在尝试重现这段代码的结果: https://github.com/vjayd/Image-Alignment-using-CNN 我遇到的第一个问题是,据我所知,MNIST 数据是灰色图像而不是彩色图像 那么为什么他使用 rgb2gray 函数将它们转换为灰度图像

for img_train in glob.glob(trdata):
    n = io.imread(img_train)
    n = rgb2gray(n)
    n= resize(n,(28,28))
    train_x.append(n.reshape(1, 28, 28))

这行(1, 1, 28, 28)是什么意思

test_x = test_x.reshape(1, 1, 28, 28) 

Pytorch 模型主要要求输入的第一个维度是批量大小。所以图像的形状是(1, 28, 28)。如果您只想将一张图像提供给模型,您仍然必须指定批量大小,当然,一张图像为 1。因此,他通过将图像“重塑”为 (1, 1, 28, 28) 来将批量大小维度添加到图像中。