原文链接

1. 通道数问题 :

  • 描述一个像素点,如果是灰度,那么只需要一个数值来描述它,就是单通道。如果有RGB三种颜色来描述它,就是三通道。最初输入的图片样本的 channels ,取决于图片类型;

  • 卷积操作完成后输出的 out_channels ,取决于卷积核的数量。此时的 out_channels 也会作为下一次卷积时的卷积核的 in_channels

  • 卷积核中的 in_channels ,上面已经说了,就是上一次卷积的 out_channels ,如果是第一次做卷积,就是样本图片的 channels

举个例子,假设现有一个为 6×6×3的图片样本,使用 3×3×3 的卷积核(filter)进行卷积操作。此时输入图片的 channels 为 3,而卷积核中的 in_channels 与需要进行卷积操作的数据的 channels 一致(就是图片样本,为3)。接下来进行卷积操作,卷积核中的27个数字与分别与样本对应相乘后,再进行求和,得到第一个结果。依次进行,最终得到 4×4的结果。由于只有一个卷积核,所以最终得到的结果为 4×4×1,out_channels 为 1。如下图所示:

在实际应用中,都会使用多个卷积核。这里如果再加一个卷积核,就会得到 4×4×2的结果。如下图所示:

2. nn.Conv2d

class torch.nn.Conv2d(in_channels, out_channels, kernel_size, stride=1, padding=0, output_padding=0, groups=1, bias=True)

nn.Conv2d的功能是:对由多个输入平面组成的输入信号进行二维卷积。输入信号的形式为:

(1)参数说明:

N:表示batch size(批处理参数)

C_{in}:表示channel个数

H,W:分别表示特征图的高和宽。

stride(步长):步长,默认为1,可以设为1个int型数或者一个(int, int)型的tuple。

kernel_size:卷积核的宽度和长度,单个整数或由两个整数构成的list/tuple。如为单个整数,则表示在各个空间维度的相同长度。

padding(补0):控制zero-padding的数目,padding是在卷积之前补0。

dilation(扩张):控制kernel点(卷积核点)的间距; 可以在此github地址查看:Dilated convolution animations

groups(卷积核个数):通常来说,卷积个数唯一,但是对某些情况,可以设置范围在1 —— in_channels中数目的卷积核:

(2)图像尺寸:

经过一次卷积之后,生成的图的大小:

(original_size - (kernal_size - 1)) / stride

3. nn.ConvTranspose2d

nn.ConvTranspose2d的功能是进行反卷积操作

(1)输入格式:

nn.ConvTranspose2d(in_channels, out_channels, kernel_size, stride=1, padding=0, output_padding=0, groups=1, bias=True, dilation=1)

(2)参数的含义:

  • in_channels(int) – 输入信号的通道数

  • out_channels(int) – 卷积产生的通道数

  • kerner_size(int or tuple) - 卷积核的大小

  • stride(int or tuple,optional) - 卷积步长,即要将输入扩大的倍数。

  • padding(int or tuple, optional) - 输入的每一条边补充0的层数,高宽都增加2*padding

  • output_padding(int or tuple, optional) - 输出边补充0的层数,高宽都增加padding

  • groups(int, optional) – 从输入通道到输出通道的阻塞连接数

  • bias(bool, optional) - 如果bias=True,添加偏置

  • dilation(int or tuple, optional) – 卷积核元素之间的间距

学习更多编程知识,请关注我的公众号:

代码的路

PyTorch中 nn.Conv2d与nn.ConvTranspose2d函数的用法相关推荐

  1. tf.nn.conv2d() / tf.nn.depthwise_conv2d() 和 Batchsize效益

    1. 卷积函数tf.nn.conv2d() tf.nn.conv2d(input, filter, strides, padding, use_cudnn_on_gpu=True, data_form ...

  2. Pytorch中tensor维度和torch.max()函数中dim参数的理解

    Pytorch中tensor维度和torch.max()函数中dim参数的理解 维度 参考了 https://blog.csdn.net/qq_41375609/article/details/106 ...

  3. oracle8i substr,Oracle中的INSTR,NVL和SUBSTR函数的用法详解

    Oracle中INSTR的用法: INSTR方法的格式为 INSTR(源字符串, 要查找的字符串, 从第几个字符开始, 要找到第几个匹配的序号) 返回找到的位置,如果找不到则返回0. 例如:INSTR ...

  4. [转载] python中string函数的用法_python中string模块各属性以及函数的用法

    参考链接: Python中的string.octdigits 任何语言都离不开字符,那就会涉及对字符的操作,尤其是脚本语言更是频繁,不管是生产环境还是面试考验都要面对字符串的操作. python的字符 ...

  5. PyTorch学习笔记(1)nn.Sequential、nn.Conv2d、nn.BatchNorm2d、nn.ReLU和nn.MaxPool2d

    文章目录 一.nn.Sequential 二.nn.Conv2d 三.nn.BatchNorm2d 四.nn.ReLU 五.nn.MaxPool2d 一.nn.Sequential torch.nn. ...

  6. pytorch笔记(四)nn.Conv1d、nn.Conv2d、nn.Conv3d

    概念: nn.Conv1d:常用在文本 (B,C,L) (batch,channel,sequence_len) (批数量,通道数,句子长度) nn.Conv2d:常用在图像 (B,C,H,W) (b ...

  7. 通俗理解tf.nn.conv2d() tf.nn.conv3d( )参数的含义 pytorhc 卷积

    20210609 例如(3,3,(3,7,7))表示的是输入图像的通道数是3,输出图像的通道数是3,(3,7,7)表示过滤器每次处理3帧图像,卷积核的大小是3 x 7 x 7. https://blo ...

  8. python中numpy函数fft_如何在PyTorch中正确使用Numpy的FFT函数?

    我最近被介绍给Pythorch,开始浏览图书馆的文档和教程. 在"使用numpy和scipy创建扩展"教程中( http://pytorch.org/tutorials/advan ...

  9. Pytorch中tensor.expand()和tensor.expand_as()函数

    Pytorch中tensor.expand函数 Tensor.expand()函数详解 Tensor.expand_as()函数 Tensor.expand()函数详解 函数语法: # 官方解释: D ...

最新文章

  1. 【Java 注解】自定义注解 ( 注解属性定义与赋值 )
  2. 阿里云CDN技术 揭秘
  3. 【推荐系统】KDD2021推荐系统论文集锦
  4. mysql 8.0.11-Windows (x86, 64-bit)下载地址与安装教程
  5. ASP.NET MVC +EasyUI 权限设计(三)基础模块
  6. Python序列基本操作(二)
  7. java抽象类及其派生类_java抽象类
  8. 贾跃亭与孙宏斌的塑料兄弟情
  9. python selenium等待特定网页元素加载完毕
  10. ext3与ext4主要区别
  11. java持久化框架对比_四种流行的持久化框架比较
  12. nRF52840芯片硬件设计解析
  13. matlab标注图例位置,MATLAB中标注图例
  14. url传参的编码与解码
  15. Scipy-kmeans聚类
  16. Adobe Photoshop 2022新版本下载体验,看看“新”在哪?
  17. [UE]模块无法被加载,因此插件加载失败。可能存在系统错误,或模块未能正确设置
  18. C++ Fun和Do题解
  19. python的认识PPT
  20. (实战)用Python实现taobao某品牌杀虫剂评论的情感分析

热门文章

  1. 没有技术含量,但能每天赚50刀的GGAD赚钱办法分享
  2. 系统设定工具与硬件侦测
  3. 游戏浅谈1-传奇,跑跑卡丁车
  4. Opencascade 开发 1章
  5. 先验分布/后验分布/似然估计/贝叶斯公式
  6. V4L2视频驱动程序开发之驱动方法poll 和 应用程序select
  7. 三极管工作原理--我见过最通俗讲法
  8. 网络曝光华为自研操作系统“鸿蒙” (图)
  9. 数据库连接池之自定义连接池(mysql)
  10. 计算机类所有一级刊物,核心期刊介绍