目前,我正在使用一些网络对灰度图像进行分类。我想转向彩色(RGB)图像。
在Tensorflow的CIFAR-10教程中,我对卷积核的权重感到困惑。第一个卷积看起来像这样:
kernel = _variable_with_weight_decay('weights', shape=[5, 5, 3, 64],
stddev=1e-4, wd=0.0)
conv = tf.nn.conv2d(images, kernel, [1, 1, 1, 1], padding='SAME')
因此,它是一个输入为3(每个颜色通道:红色、绿色和蓝色图像信息)的5x5
卷积,并生成64个特征映射。
然而,第二个卷积层接受64个特征映射作为输入:
kernel = _variable_with_weight_decay('weights', shape=[5, 5, 64, 64],
stddev=1e-4, wd=0.0)
conv = tf.nn.conv2d(norm1, kernel, [1, 1, 1, 1], padding='SAME')
那么,这个过程如何处理颜色信息?这是否意味着不同的颜色通道在卷积层1的64个特征映射上以某种方式“分散”?
我认为卷积层1为每个颜色通道生成64个特征映射,因此最终得到3 * 64 = 196个特征映射...但显然我错了。
颜色信息在卷积层1中是如何混合的?