卷积神经网络学习1.2-1.4

卷积计算

卷积计算是卷积神经网络的基础组成单元之一

边缘检测

 用计算机进行对图像进行图形边缘检测,分别是垂直边缘检测和水平边缘检测。

如何进行边缘检测

 如图一个6x6x1的灰度图像,一个3x3的过滤器filter,输出4x4的矩阵

计算方法:将3x3的过滤器放在原始图像上3x3的区域上,将所有元素积相加

 以上是用 3x3 的矩阵(过滤器) 卷积 6x6 的矩阵(图像)得到一个4x4 的矩阵(图像)

这就是一个垂直边缘检测器

一个例子

 6x6图像左半边的10代表得到更亮的像素强度,右半边的0得到较暗的像素强度 在中间可以得到从白到黑的过度。

3x3图像左可以可视化为左边是明亮的像素点,中间是较暗的像素点,右边是更暗的像素点

 最后通过计算可以得到4x4矩阵,进行可视化后

 这里4x4矩阵计算检测到更亮的区域在中间,和6x6矩阵对应明暗交接垂直边缘相对应。

 padding

像上面说过,如果由一个3x3的过滤器卷积一个6x6的图片,最终会得到输出一个4x4的矩阵。

这是因为为了适应6x6矩阵大小,3x3过滤器只有4x4可能的位置

'4x4 possible positions, for the 3x3 filter to fit in the 6x6 matrix.' 

 公式: 如果有一个nxn的图片,希望使用一个fxf的过滤器,输出的维度会是           6 - 3 + 1 = 4

缺陷:1.每使用一次卷积操作,图像都会缩小

           2.边界角落位置上的像素,只会在输出中被使用一次;然而中间位置的像素,会被多次使用

为了避免缺陷,可以使用padding:在原本图像周围加上一圈1像素的额外边缘

        6x6的图像也因此变成8x8的图像。

再次用3x3的过滤器对填充padding后的图像进行卷积,可以得到6x6的图像,保持了原有图像的大小。

假如图中填充以 0 来进行填充,这种情况下p  = padding = 1(因为使用了1像素的额外边缘填充了一圈),这样输出的维度变成了 6+2 x 1-3 +1 = 6

这个绿色像素影响了周围所有filter的输出,也就降低了 边缘像素使用率少的缺陷。

Valid & Same convolutions

'Valid'  =  no padding

Same Convolution : 选择的填充使得输入大小等于输出大小

利用公式计算需要填充多少像素,通常填充为奇数

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值