为什么CNN需要固定输入图像的尺寸(CNN图像尺寸输入限制问题)

通过CNN组成(卷积层和全连接层)进行分析。 
(1)卷积层 
  卷积层对于图像是没有尺寸限制要求的。输入图像是28*28,卷积仅于自身的卷积核大小,维度有关,输入向量大小对其无影响(如第一层卷积,输入图像的大小和维度)。

# 输入图像
x = tf.placeholder(tf.float32, [None, 784])
y_ = tf.placeholder(tf.float32, [None, 10])
x_image = tf.reshape(x, [-1, 28, 28, 1])
# 卷积层
W_conv1 = weight_variable([5, 5, 1, 32])
b_conv1 = bias_variable([32])
h_conv1 = tf.nn.relu(conv2d(x_image, W_conv1) + b_conv1)
...
...
# 池化层
h_pool2 = max_pool_2x2(h_conv2)

(2)全连接层 
  全连接过程中,w_fc1的输入与卷积层后的输出有关系,即对code中池化结果h_pool2进行reshape,该处是输入上一层的大小7*7*64。

# 全连接层
W_fc1 = weight_variable([7*7*64, 1024])
b_fc1 = bias_variable([1024])
h_pool2_flat = tf.reshape(h_pool2,[-1, 7*7*64])
# h_pool2_flat = tf.reshape(h_pool2,[batch_size, -1])
h_fc1 = tf.nn.relu(tf.matmul(h_pool2_flat, W_fc1) + b_fc1)

  可以看出,全连接层的输入是固定大小的,如果输入向量的维数不固定,那么全连接的权值参数的量也是不固定的,就会造成网络的动态变化,无法实现参数训练目的。

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值