CNN架构的图像输入遵循一种复杂的格式,以支持图像的批量加载。
TensorFlow中的图像输入格式支持图像的批量加载,可以同时对多幅图像进行处理。
这种格式包括了任意一副图像所需的信息:
[image_batch_size, image_height, image_width, image_channels]
1
如下述两幅图像:
image_batch = tf.constant([
[ #第1幅图像
[[0,255,0],[0,255,0],[0,255,0]],
[[0,255,0],[0,255,0],[0,255,0]]
],
[ #第2幅图像
[[0,0,255],[0,0,255],[0,0,255]],
[[0,0,255],[0,0,255],[0,0,255]]
]
])
image_batch.get_shape()
输出:
TensorShape([Dimension(2), Dimension(2), Dimension(3), Dimension(3)])
1
2
3
4
5
6
7
8
9
10
11
12
13
这段代码创建了一个包含两幅图像的批数据。每幅图像高为2个像素,宽为3个像素,且颜色空间为RGB。输出的第1组维度表明了图像数量,第2组维度对应图像的高度,第3组维度对应图像的宽度,颜色通道数量对应最后一组维度。
sess.run(image_batch)[0][0][0]
1
执行该条语句,得到的是第一幅图像的第一个像素:
array([0,255,0],dtype=int32)
1
——山姆·亚伯拉罕等《面向机器智能的TensorFlow实践》
---------------------
作者:yangsong95
来源:CSDN
原文:https://blog.csdn.net/yangsong95/article/details/82689668
版权声明:本文为博主原创文章,转载请附上博文链接!
|
|