CNN学习笔记:卷积运算

边缘检测

    

卷积

  卷积是一种有效提取图片特征的方法。一般用一个正方形卷积核,遍历图片上的每一个像素点。图片与卷积核重合区域内相对应的每一个像素值乘卷积核 、内相对应点的权重,然后求和,再加上偏置后,最后得到输出图片中的一个像素值。

卷积操作的作用

  卷积是一种局部操作,通过一定大小的卷积核作用于局部图像区域获得图像的局部信息。

  我们现在使用三种边缘卷积核(亦称滤波器),整体边缘滤波器、横向边缘滤波器和纵向边缘滤波器。

  

  试想,若原图像素(x, y)处可能存在物体边缘,则其四周(x−1,y),(x+1,y),(x, y−1),(x, y+ 1)处像素值应与(x, y)处有显著差异。此时,如作用以整体边缘滤波器Ke,可消除四周像素值差异小的图像区域而保留显著差异区域,以此可检测出物体边缘信息。同理,类似于Kh和Kv的横向、纵向边缘滤波器可以保留横向、纵向的边缘信息。
  事实上,卷积网络中的卷积核参数是通过网络训练学出的,除了可以学到类似的横向、纵向边缘滤波器,还可以学到任意角度的边缘滤波器。当然,不仅如此,检测颜色、形状、纹理等众多的基本模式的滤波器都可以包含在一个足够复杂的深层卷积神经网络中。

对立方体卷积

  所谓的立方体卷积是指对多通道色彩的图形进行卷积操作。

  

  我们需要有对应通道数的卷积层,此处为3层,每一层处理一个通道,按照卷积操作执行,最后会生成27个数据,将其合计后填入输出矩阵中即可。

填充Padding

  在卷积操作中,卷积后的图形将会小于原始图形,并且图形缩小会导致丢失一些边缘信息,我们可以卷积操作之前对输入图形周围进行全零填充,来保证输出图形的尺寸和输入图形的尺寸一致。

  

设置步长

  在上述的卷积过程中,卷积层在原始图形中沿着水平方向每次移动一格,最后输出图形的大小为5*5,当然我们也可以设置移动的间隔,比如为2.这样生成的输出图形的大小就会减小到3*3。

  

  计算公式是这样的:(原始图形大小+2*填充厚度)/步长+1.

CNN学习笔记:卷积运算的更多相关文章

  1. CNN学习笔记:卷积神经网络

    CNN学习笔记:卷积神经网络 卷积神经网络 基本结构 卷积神经网络是一种层次模型,其输入是原始数据,如RGB图像.音频等.卷积神经网络通过卷积(convolution)操作.汇合(pooling)操作 ...

  2. 卷积神经网络(CNN)学习笔记1:基础入门

    卷积神经网络(CNN)学习笔记1:基础入门 Posted on 2016-03-01   |   In Machine Learning  |   9 Comments  |   14935  Vie ...

  3. CNN学习笔记:目标函数

    CNN学习笔记:目标函数 分类任务中的目标函数 目标函数,亦称损失函数或代价函数,是整个网络模型的指挥棒,通过样本的预测结果与真实标记产生的误差来反向传播指导网络参数学习和表示学习. 假设某分类任务共 ...

  4. CNN学习笔记:全连接层

    CNN学习笔记:全连接层 全连接层 全连接层在整个网络卷积神经网络中起到“分类器”的作用.如果说卷积层.池化层和激活函数等操作是将原始数据映射到隐层特征空间的话,全连接层则起到将学到的特征表示映射到样 ...

  5. CNN学习笔记:池化层

    CNN学习笔记:池化层 池化 池化(Pooling)是卷积神经网络中另一个重要的概念,它实际上是一种形式的降采样.有多种不同形式的非线性池化函数,而其中“最大池化(Max pooling)”是最为常见 ...

  6. CNN学习笔记:神经网络表示

    CNN学习笔记:神经网络表示 双层神经网络模型 在一个神经网络中,当你使用监督学习训练它的时候,训练集包含了输入x还有目标输出y.隐藏层的含义是,在训练集中,这些中间节点的真正数值,我们是不知道的,即 ...

  7. CNN学习笔记:正则化缓解过拟合

    CNN学习笔记:正则化缓解过拟合 过拟合现象 在下图中,虽然绿线完美的匹配训练数据,但太过依赖,并且与黑线相比,对于新的测试数据上会具有更高的错误率.虽然这个模型在训练数据集上的正确率很高,但这个模型 ...

  8. CNN学习笔记:批标准化

    CNN学习笔记:批标准化 Batch Normalization Batch Normalization, 批标准化, 是将分散的数据统一的一种做法, 也是优化神经网络的一种方法. 在神经网络的训练过 ...

  9. CNN学习笔记:激活函数

    CNN学习笔记:激活函数 激活函数 激活函数又称非线性映射,顾名思义,激活函数的引入是为了增加整个网络的表达能力(即非线性).若干线性操作层的堆叠仍然只能起到线性映射的作用,无法形成复杂的函数.常用的 ...

随机推荐

  1. Cmake实现样例

    多目录工程的CmakeLists.txt编写(自动添加多目录下的文件) http://www.cnblogs.com/chengxuyuancc/p/5347646.html 实现类似于vs中工程的C ...

  2. C语言中文网

    网址:http://c.biancheng.net/cpp/ 涵盖如下:

  3. ubuntu终端使用代理

    sudo http_proxy=http://your_proxy:proxy_port dropbox start -i or sudo https_proxy=http://your_proxy: ...

  4. Android上传图片(PHP服务器)

    原理 Android客户端模拟一个HTTP的Post请求到服务器端,服务器端接收相应的Post请求后,返回响应信息给给客户端. PHP服务器 <?php move_uploaded_file($ ...

  5. spring-redis SortedSet类型成员的过期时间处理

    redis默认是只支持简单key的过期处理的,像SortedSet类型,也是针对整个set的过期处理,不支持对set的某个成员的过期处理: 为了解决这个问题,做法如下: 1.存储key及值信息到red ...

  6. Linux下自动调整时间和时区与Internet时间同步

    (原文链接) 调整linux系统时间和时区与Internet时间同步一.修改时区:# cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime修改为中国的 ...

  7. c++ wchar_t

    ·C语言相关 对应于char, C语言中也有宽字符内型wchar_t.wchar_t被定义为: typedef unsigned short wchar_t ;显然它是16位的.wchar_t类型的常 ...

  8. thinkphp 模板里嵌入 php代码

    <php> echo 'nihao';</php><?phpecho 'gge';?> Php代码可以和标签在模板文件中混合使用,可以在模板文件里面书写任意的PHP ...

  9. 【BZOJ1570】[JSOI2008]Blue Mary的旅行 动态加边网络流

    [BZOJ1570][JSOI2008]Blue Mary的旅行 Description 在一段时间之后,网络公司终于有了一定的知名度,也开始收到一些订单,其中最大的一宗来自B市.Blue Mary决 ...

  10. 160705、总结:commons-codec.jar中常用方法

    一.Base64编码和解码import org.apache.commons.codec.EncoderException;import org.apache.commons.codec.binary ...