输入通道的Tensorflow卷积数与过滤器的相应尺寸不匹配

时间:2018-10-31 19:02:41

标签: python tensorflow convolution

我正在尝试对具有高斯核的张量进行卷积。

我在this link之后创建了高斯核,并创建了形状为[11,11,3]的高斯核

我从目录中读取的图像如下:

// Set Selected Row
// If we need to scroll the selected row into view
// this would be a good place to set FirstDisplayedScrollingRowIndex
foreach (DataGridViewRow row in dataGridView1.Rows)
     if (row.Cells[KeyIndex].Value.ToString() == LastSelectedKey)
          row.Selected = true;

这将返回将填充RGB图像的[256、256、3]形状的张量

然后我尝试了这个:

file = tf.train.match_filenames_once("/imgs/*.png")
file_string = tf.train.string_input_producer(file)
image_reader = tf.WholeFileReader()
_, image_file = image_reader.read(file_string)
image = tf.subtract(tf.div(tf.image.resize_images(tf.image.decode_png(image_file, 3), [256, 256], 127.5), 1)

,我收到以下错误消息:

image_smoothed = tf.nn.convolution(image, gauss_kernel, padding='SAME')

我试图对图像和内核的尺寸进行重新排序,并在两者上添加额外的尺寸以解决批次尺寸问题,这些值我得到相同的错误:

内核[11,11,3],图像[1,256,256,3]->错误:256!= 11

内核[1、11、11、3],图像[1、256、256、3]->错误:3!= 11

内核[1、3、11、11],图像[1、256、256、3]->错误:3!= 11

内核[3,11,11],图像[1,256,256,3]->错误:256!= 11

内核[3,11,11],图像[256,256,3]->错误:3!= 11

内核[11,11,3],图像[3,256,256,1]->错误:256!= 11

内核[11,11,3],图像[3,256,256]->错误:256!= 11

有人知道为什么不存在使卷积起作用的正确尺寸组合吗?

谢谢

0 个答案:

没有答案