带有dilation的conv卷积输出尺寸的计算公式_含dilation 的卷积输入输出大小计算-程序员宅基地

技术标签: 机器学习  深度学习  

对于conv卷积输出尺寸的计算公式:

在pytorch中二维卷积函数定义如下:

在这里插入图片描述
其卷积后输出尺寸计算公式如下:

w o u t = w i n + 2 ∗ padding  − F stride + 1 w_{o u t}=\frac{w_{i n}+2 * \text {padding }-F}{\text {stride}}+1 wout=stridewin+2padding F+1

其中 w i n \mathcal{w}_{i n} win代表输入图像尺寸, w o u t \mathcal{w}_{out} wout代表输出图像尺寸,padding代表补0的数目,stride代表步长,F代表卷积核的尺寸。

一般,默认的dilation为1,就是普通的卷积操作,如果dilation大于1,表示此时进行空洞卷积,那么这时的卷积之后输出尺寸如何计算?

首先,将空洞卷积的卷积核进行等效成一个等效卷积核的尺寸大小,然后将此等效卷积核的尺寸带入上式的F即可。

这里,空洞卷积的等效卷积核大小尺寸计算公式如下:

K = k + ( k − 1 ) ∗ ( r − 1 ) K = k + (k-1)*(r-1) K=k+(k1)(r1)

其中, K K K代表等效卷积核尺寸, k k k代表实际卷积核尺寸,而 r r r代表dilation,空洞卷积的参数。

import torch
import torch.nn as nn

m = nn.Sequential(
        nn.Conv2d(1,1,3,stride=1, padding=0, dilation=3),
        )

n = nn.Sequential(
        nn.Conv2d(1,1,3,stride=1, padding=0, dilation=1)
        )

a = torch.randn(1,1,10,10)
print('a.size=',a.size())

b = m(a)
#print('b=',b)
print('b.size=',b.size())

c = n(a)
#print('c=',c)
print('c.size=',c.size())

输出结果如下:

a.size= torch.Size([1, 1, 10, 10])
b.size= torch.Size([1, 1, 4, 4])
c.size= torch.Size([1, 1, 8, 8])

可以带入上述公式计算验证。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_30614451/article/details/100019798

智能推荐

像素位移_[GPU Gems2] 7. 带有位移映射的细分表面的自适应镶嵌-程序员宅基地

文章浏览阅读184次。Chapter 7. Adaptive Tessellation of Subdivision Surfaces with Displacement Mapping​developer.nvidia.com介绍本文的关键词有:自适应镶嵌(adaptive tessellation)Catmull-Clark 表面细分(subdivision surfaces)位移映射(displacement m..._subdivision limit point

CSS Vue 中使用标签 i 设置图标和hover样式(小技巧)_vue i标签-程序员宅基地

文章浏览阅读7.3k次,点赞4次,收藏6次。样式如下:方式一:使用图片<template> <div class="main"> <div class="win"> <div class="title"> <i class="icon close-icon"/> </div> </div> </div></t_vue i标签

JDK15新特性概述-程序员宅基地

文章浏览阅读3.3k次。Java的现状2020 年是 Java 诞生的第 25 个年头。Oracle表示,目前java仍然流行编程语言,广泛使用在企业中。目前全世界有超过69%的专职开发人员使用Java,全世界有510亿台活动Java虚拟机(JVM)在部署中,目前Java主要被用于分析,数据管理,大数据,DevOps,移动,持续开发工具和聊天机器人等服务。历史版本的主要新特性在过去的这些年中,Java ..._jdk15概述

网易云歌单添加到php,给自己的网站添加网易云音乐歌单吧^ ^-程序员宅基地

文章浏览阅读630次。这个是怎么实现的?一起来看看吧APlayer首先我们需要一个音频播放器,这里我用到了APlayer,这是由bilibili前端大神DIYgod开源的播放器,有兴趣的可以去TA的主页看看,非常惊艳,这里我就不多说了我们看一下APlayer的官方文档,方法很简单const ap = new APlayer({container: document.getElementById('aplayer'),a..._php嵌入网易云动态

ListView的用法_listview 享学-程序员宅基地

文章浏览阅读107次。package com.enjoy.leo_listview;import androidx.appcompat.app.AppCompatActivity;import android.os.Bundle;import android.util.Log;import android.view.View;import android.widget.AdapterView;import android.widget.ListView;import java.util.ArrayList;_listview 享学

docker 下安装consul_docker 单机版 consul agent -server -bootstrap -ui -cl-程序员宅基地

文章浏览阅读180次。1.获取consul镜像docker pull consul2.Docker运行consuldocker run --name consule -d -p 8500:8500 -p 8600:8600/udp consul3.访问管理页面http://127.0.0.1:8500/ui_docker 单机版 consul agent -server -bootstrap -ui -client='0.0.0.0

随便推点

Upload-labs 18 条件竞争——通关_upload_labs第18关-程序员宅基地

文章浏览阅读3.8k次,点赞3次,收藏7次。访问目标站点,提示上传图片马查看源码思路:上传shell.php.7z图片木马配合解析漏洞实验步骤:图片中php一句话木马代码:<?php fputs(fopen('shell2.php','w'),'<?php @eval($_POST["x"])?>’);?>第一种:使用python脚本第一步:burpsuite抓包,上传文件名字shell.php.7z..._upload_labs第18关

【前端开发】Vue/uview/uni-app,实现登录注册页面_uview登录页面-程序员宅基地

文章浏览阅读7.7k次,点赞10次,收藏47次。注册的思路: 注册需求: 注册所需的 (1)使用uview的u-form表单组件 先将版式排出来(如果需要额外加样式,就加同样的类名即可) (2)再进行参数的设置 u-form:需要设置:model="form" ref="uForm" +参数列表 u-form-item:需要设置 label="昵称" prop="name" labelWidth="160" leftIcon="phone" +参数列表 u-input:需要设置v-m..._uview登录页面

高通AR93XX QCA95XX系列CPU上调试32MB SPI Nor Flash_ami 32m spi修改-程序员宅基地

文章浏览阅读7.6k次,点赞2次,收藏13次。简单描述了在高通9XXX系列CPU,基于Openwrt bb1407调试32MB SPI Nor Flash时所遇到的问题,以及相应的原理和解决方案。_ami 32m spi修改

netns命名空间使用_net ns-程序员宅基地

文章浏览阅读607次。在linux系统中通过netns创建虚拟主机,作用同VM,相比于VM其优势是随时创建,随时删除,操作方便增加虚拟网络命名空间vm,vm是命名空间的名字,可以随意起,就创建了一台虚拟nsip netns add vm显示物理机里的命名空间,加不加list都行,显示刚创建的vmip netns (list)进入netns,也可以不进入但执行每一个ip link都需要在前面加上ip..._net ns

sql 分组查询及格不及格人数-程序员宅基地

文章浏览阅读2k次。select score as 类别,count(*) as 人数 from (select case when fen>=60 then '及格' else '不及格' end as score from fen ) fen group by score转载于:https://www.cnblogs.com/b422/p/3725903.html..._工序 分组求和 合格和不合格的数量 sql

HTML5之WebSocket_html5websocket 多服务器-程序员宅基地

文章浏览阅读199次。WebSocket 是 HTML5 开始提供的一种在单个 TCP 连接上进行全双工通讯的协议。WebSocket 使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。在 WebSocket API 中,浏览器和服务器只需要完成一次握手,两者之间就直接可以创建持久性的连接,并进行双向数据传输。在 WebSocket API 中,浏览器和服务器只需要做一个握手的动作,然后,浏览器和服务器之间就形成了一条快速通道。两者之间就直接可以数据互相传送。现在,很多网站为了实现推送技术,所用_html5websocket 多服务器