一、卷积核的维数

1、二维卷积核(2d)

2D卷积操作如图1所示,为了解释的更清楚,分别展示了单通道多通道的操作。且为了画图方便,假定只有1个filter,即输出图像只有一个chanel。
针对单通道,输入图像的channel为1,即输入大小为(1, height, weight),卷积核尺寸为 (1, k_h, k_w),卷积核在输入图像上的的空间维度(即(height, width)两维)上进行进行滑窗操作,每次滑窗和 (k_h, k_w) 窗口内的values进行卷积操作(现在都用相关操作取代),得到输出图像中的一个value。
针对多通道,假定输入图像的channel为3,即输入大小为(3, height, weight),卷积核尺寸为 (3, k_h, k_w), 卷积核在输入图像上的的空间维度(即(height, width)两维)上进行进行滑窗操作,每次滑窗与3个channels上的 (k_h, k_w) 窗口内的所有的values进行相关操作,得到输出图像中的一个value。

2、三维卷积核(3d)

3D卷积操作如图2所示,同样分为单通道多通道,且只使用一个filter,输出一个channel。
其中,针对单通道,与2D卷积不同之处在于,输入图像多了一个 depth 维度,故输入大小为(1, depth, height, width),卷积核也多了一个k_d维度,因此卷积核在输入3D图像的空间维度(height和width维)和depth维度上均进行滑窗操作,每次滑窗与 (k_d, k_h, k_w) 窗口内的values进行相关操作,得到输出3D图像中的一个value。
针对多通道,输入大小为(3, depth, height, width),则与2D卷积的操作一样,每次滑窗与3个channels上的 (k_d, k_h, k_w) 窗口内的所有values进行相关操作,得到输出3D图像中的一个value。

二、卷积层尺寸的计算原理

  • 输入矩阵格式:四个维度,依次为:样本数、图像高度、图像宽度、图像通道数
  • 输出矩阵格式:与输出矩阵的维度顺序和含义相同,但是后三个维度(图像高度、图像宽度、图像通道数)的尺寸发生变化。
  • 权重矩阵(卷积核)格式:同样是四个维度,但维度的含义与上面两者都不同,为:卷积核高度、卷积核宽度、输入通道数、输出通道数(卷积核个数)
  • 输入矩阵、权重矩阵、输出矩阵这三者之间的相互决定关系
  • 卷积核的输入通道数(in depth)由输入矩阵的通道数所决定。(红色标注)
  • 输出矩阵的通道数(out depth)由卷积核的输出通道数所决定。(绿色标注)
  • 输出矩阵的高度和宽度(height, width)这两个维度的尺寸由输入矩阵、卷积核、扫描方式所共同决定。计算公式如下。(蓝色标注)
  • 注:以下计算演示均省略掉了 Bias ,严格来说其实每个卷积核都还有一个 Bias 参数。

标准卷积计算举例

以 AlexNet 模型的第一个卷积层为例,

  • 输入图片的尺寸统一为 227 x 227 x 3 (高度 x 宽度 x 颜色通道数),
  • 本层一共具有96个卷积核,
  • 每个卷积核的尺寸都是 11 x 11 x 3。
  • 已知 stride = 4, padding = 0,
  • 假设 batch_size = 256,
  • 则输出矩阵的高度/宽度为 (227 - 11) / 4 + 1 = 55

作者:只为此心无垠
链接:https://www.jianshu.com/p/6e1ef63615f8
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

卷积、卷积核的维数、尺寸相关推荐

  1. pytorch查看通道数 维数 尺寸大小

    查看tensor x.shape # 尺寸x.size() # 形状x.ndim # 维数 例如 import torchparser = argparse.ArgumentParser(descri ...

  2. 卷积神经网络中二维卷积核与三维卷积核有什么区别?

    目录 1 一维卷积神经网络(1D-CNN) 2 二维卷积神经网络(2D-CNN) 2.1 单通道 2.2 多通道 2.3 2D卷积的计算 3 三维卷积 ​​​​​​​3.1 3D卷积 3.2 3D卷积 ...

  3. pytorch方法测试——卷积(二维)

    pytorch方法测试--卷积(二维) 测试代码: import torch import torch.nn as nnm = nn.Conv2d(2, 2, 3, stride=2) input = ...

  4. CNN中的卷积操作的参数数计算

    之前一直以为卷积是二维的操作,而到今天才发现卷积其实是在volume上的卷积.比如输入的数据是channels*height*width(3*10*10),我们定义一个核函数大小为3*3,则输出是8* ...

  5. k 最近邻_k最近邻与维数的诅咒

    k 最近邻 机器学习模型和维数的诅咒 (Machine Learning models and the curse of dimensionality) There is always a trade ...

  6. matlab盒子分形维数_分形:盒子维数

    今天主要想说的是,分形中的差分盒子维数的原理,基于分形的基础概念就不在这里说啦. 分形维数可以用于定量描述图像表面的空间复杂程度,能够定量的表现图像的纹理特征. 采用不同的维数进行纹理特征描述时,精度 ...

  7. OpenCV图像处理(3)——盒维数计算

    计算分形盒子维 //************************// //计算分形盒子维 //*** yangxin_szu 2013_03_28 ***// //valarray与 MFC 有一 ...

  8. android 颜色 数组,在Android中声明维数,颜色,资源ID或其他非标准数据类型的数组?...

    我发现自己希望创建Android似乎本不支持的值的xml数组,并且正在寻找解决此问题的一些方法.当前,如果你希望在XML中声明一个值的数组,你仅限于字符串,整数和一个通用的非类型化"数组&q ...

  9. HOG参数简介及Hog特征维数的计算

    HOG构造函数 CV_WRAP HOGDescriptor() :winSize(64,128), blockSize(16,16), blockStride(8,8),      cellSize( ...

  10. c语言中二维数组中维数的计算,数组指针字符串C语言程序设计-第4章.ppt

    <数组指针字符串C语言程序设计-第4章.ppt>由会员分享,可在线阅读,更多相关<数组指针字符串C语言程序设计-第4章.ppt(132页珍藏版)>请在人人文库网上搜索. 1.程 ...

最新文章

  1. Android开源框架——依赖注入ButterKnife
  2. codeforces1467 E. Distinctive Roots in a Tree(树上差分)
  3. 使用快捷键,快到极致
  4. Spring MVC遭遇checkbox的问题解决方案
  5. php 数组按个数分组,如何在PHP中基于内部数组键对数组进行分组?
  6. android 自定义paint,Android自定义View中Paint、Rect、Canvas介绍(一)
  7. 用决策树模型求解回归问题(regression tree)
  8. ^全^ 获取SQL SERVER2000/2005、MySql、Oracle元数据的SQL语句 [SQL语句来自CodeSmith]
  9. 刚毕业的大学夫妻,我含泪看完(转帖)
  10. spring xml解析详解
  11. 如何准备一场Java面试?
  12. 《车联网(智能网联汽车)产业发展行动计划》正式发布,车联网产业发展进一步提速...
  13. 台式计算机规格型号怎么查,台式电脑主板型号在哪里看
  14. 冯提出的计算机工作原理是,冯诺依曼提出的计算机的基本工作原理是什么
  15. 江在川上曰:vue中使用swiper
  16. 纵览各国关键信息基础设施配套网络安全法规建设
  17. mojave时间机器文件服务器,在 Mac 上可以与时间机器配合使用的磁盘类型
  18. Cell Reports : 人脑中的湍流状动力学
  19. 电脑用摄像头 质量不错的几个型号 旧手机接电脑当摄像头 iriun webcam
  20. 微信客服功能是否支持手机端?

热门文章

  1. 如何给人物模型添加动画效果
  2. mysql group by作用_group by实现原理及其作用
  3. PAT初级1031(C++)查验身份证
  4. 学习笔记整理:Photoshop软件应用-基础-图像选择
  5. 移动硬盘位置不可用无法访问函数不正确修复方法?
  6. 机器学习-西瓜书-模型评估
  7. 2011微软校园招聘职位一览表
  8. 电脑商城-02-注册
  9. 二手交易app manifest.xml
  10. fastadmin 自定义按钮 btn-ajax 执行成功后 自动刷新