TensorFlow中图像张量的形状是什么

Noe*_*tin 4 tensorflow tensor

我最近开始学习Tensorflow,尤其是我想使用卷积神经网络进行图像分类。我一直在看官方存储库中的android演示,尤其是以下示例:https : //github.com/tensorflow/tensorflow/blob/master/tensorflow/examples/android/src/org/tensorflow/demo/TensorFlowImageClassifier。爪哇

在第145行,它使用图像的输入数据创建张量,如下所示:

inferenceInterface.feed(inputName, floatValues, 1, inputSize, inputSize, 3);
Run Code Online (Sandbox Code Playgroud)

现在,我一直在尝试了解它的作用,最终调用了此方法:Tensor.create。我不明白的是为什么此张量的形状(由该函数的输入参数给出)(也称为“尺寸”)是{1, inputSize, inputSize, 3}。第二维和第三维是图像的宽度和高度,第四维是图像的RGB数据。但是为什么它的第一维为1?这个张量的形状不应该{inputSize, inputSize, 3}代替吗?我猜因为维数是1,所以没有区别,但是我想必须有这种表示法的原因,我不理解。

nes*_*uno 5

Tensorflow可处理大量图像。因此,该模型接受一批形状各为的图像inputSize x inputSize x 3

1是批量大小。因此,在实践中,您要使用单张图像(形状为张量)向网络批处理1 x inputSize x inputSize x 3