彩色图像卷积核的张量权重?

dan*_*451 5 python colors neural-network conv-neural-network tensorflow

目前,我有一些网络使用灰度图像进行分类.我想继续彩色(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')
Run Code Online (Sandbox Code Playgroud)

因此它是一个5x5输入为3 的卷积(每个颜色通道一个:红色,绿色和蓝色图像信息),它生成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')
Run Code Online (Sandbox Code Playgroud)

...那么,这是如何处理颜色信息的呢?这是否意味着不同的颜色通道以某种方式传播卷积1层的64级功能的地图?

我认为转换层1为每个颜色通道生成64个特征映射,因此最终得到3*64 = 196个特征映射......但显然我错了.

如何在转换层1中混合颜色信息?

Yar*_*tov 6

见式(3)在CuDNN的描述在这里

基本上对于单个example(n),单行(p)和单个列(q),空间卷积的结果将是5x5x3值的加权和.因此每次激活都将包含来自所有3种颜色的信息.