当前位置: 首页 > news >正文

深度学习-【语义分割】学习笔记4 膨胀卷积(Dilated convolution)

文章目录

  • 膨胀卷积
    • 为什么需要膨胀卷积
  • gridding effect
    • 连续使用三次膨胀卷积——1
    • 连续使用三次膨胀卷积——2
    • 连续使用三次膨胀卷积——3
  • Understanding Convolution for Semantic Segmentation

膨胀卷积

膨胀卷积,又叫空洞卷积。


左边是普通卷积,右边是膨胀卷积。
r 表示间隙,即膨胀因子。(当 r = 1时就是普通卷积)

一般使用过程中, 输入和输出特征图的高和宽是不会发生变化的。

复习:N = (W - F + 2P)/ S + 1

为什么需要膨胀卷积

在语义分割任务中,通常会使用分类网络作为backbone,在backbone中会对图片进行一系列的下采样。通过backbone之后,会使用一系列的上采样恢复原来的图片大小。如果特征图的高宽下采样倍率太大的话,还原到原来尺寸后,图片将丢失很多细节信息。

例如,在VGG网络中,通过max pooling层进行池化,这降低了特征图的高度和宽度,也丢失了一些细节信息,而丢失的信息无法通过上采样进行还原,在语义分割任务中将导致分割的效果不理想。而如果去掉max pooling层,将导致特征图的感受野变小。

利用膨胀卷积,既能增大感受野,又能保持输入输出特征图的高和宽不发生变化,解决了上述问题。但是,是否无脑堆叠膨胀卷积就可以了呢?

参考论文Understanding Convolution for Semantic Segmentation,在膨胀卷积使用过程中,会出现gridding effect的问题。


gridding effect

首先了解 什么是 gridding effect 问题:
在这里插入图片描述

连续使用三次膨胀卷积——1

layer4上中心点使用各个点的信息的次数:
在这里插入图片描述
这就是gridding effect现象,即layer4上的一个像素并没有利用到这个范围内所有像素点的信息,而是有间隔的。(这就会导致一些细节上信息的丢失)。


连续使用三次膨胀卷积——2

与实验一不同的是,第一个膨胀卷积的膨胀因子为1,也就是普通卷积。
在这里插入图片描述
这里一个像素点使用的信息已经是某个范围内全部像素点的信息了。
感受野(RF,receptive field)= 13 × 13


连续使用三次膨胀卷积——3

连续使用三个普通卷积。

在这里插入图片描述
感受野(RF,receptive field)= 7 × 7

实验 2 和 3 对比,可以发现使用膨胀卷积在参数数量相同的情况下可以使感受野变大很多。


Understanding Convolution for Semantic Segmentation

@article{PanquWang2018UnderstandingCF, title={Understanding Convolution for Semantic Segmentation}, author={Panqu Wang and Pengfei Chen and Ye Yuan and Ding Liu and Zehua Huang and Xiaodi Hou and Garrison W. Cottrell}, journal={Workshop on Applications of Computer Vision}, year={2018}}

https://readpaper.com/paper/2592939477
在这里插入图片描述
Mi 表示第 i 层两个非零元素(即被使用到的像素)之间的最大距离。
设计原则1:需要 M2 <= K。

[1,2,5]
在这里插入图片描述

[1,2,9]
在这里插入图片描述


在这里插入图片描述
设计原则2:锯齿状膨胀因子设置,如[1,2,3,1,2,3]


在这里插入图片描述

设计原则3:公约数不能大于1
[2,4,8]
在这里插入图片描述


结果对比:

在这里插入图片描述


参考资料:
https://blog.csdn.net/Zen_of_code/article/details/127536998
https://www.bilibili.com/video/BV1Bf4y1g7j8/

相关文章:

深度学习-【语义分割】学习笔记4 膨胀卷积(Dilated convolution)

文章目录膨胀卷积为什么需要膨胀卷积gridding effect连续使用三次膨胀卷积——1连续使用三次膨胀卷积——2连续使用三次膨胀卷积——3Understanding Convolution for Semantic Segmentation膨胀卷积 膨胀卷积&#xff0c;又叫空洞卷积。 左边是普通卷积&#xff0c;右边是膨胀…...

【10】SCI易中期刊推荐——工程技术-计算机:人工智能(中科院2区)

🚀🚀🚀NEW!!!SCI易中期刊推荐栏目来啦 ~ 📚🍀 SCI即《科学引文索引》(Science Citation Index, SCI),是1961年由美国科学信息研究所(Institute for Scientific Information, ISI)创办的文献检索工具,创始人是美国著名情报专家尤金加菲尔德(Eugene Garfield…...

模电计算反馈系数,有时候转化为计算电阻分压的问题

模电计算反馈系数&#xff0c;有时候转化为计算电阻分压的问题 如果是电压反馈&#xff0c;F的除数是Uo 如果是电流反馈&#xff0c;F的除数是Io 串联反馈&#xff0c;F的分子是Uf 并联反馈&#xff0c;F的分子是If 点个赞呗&#xff0c;大家一起加油学习&#xff01;...

专治Java底子差,不要再认为泛型就是一对尖括号了

文章目录一、泛型1.1 泛型概述1.2 集合泛型的使用1.2.1 未使用泛型1.2.2 使用泛型1.3 泛型类1.3.1 泛型类的使用1.2.2 泛型类的继承1.4 泛型方法1.5 泛型通配符1.5.1 通配符的使用1&#xff09;参数列表带有泛型2&#xff09;泛型通配符1.5.2 泛型上下边界1.6 泛型的擦除1.6.1 …...

PayPal轮询收款的那些事儿

想必做跨境电商独立站的小伙伴&#xff0c;对于PayPal是再熟悉不过了&#xff0c;PayPal是一个跨国际贸易的支付平台&#xff0c;对于做独立站的朋友来说跨境收款绝大部分都是依赖PayPal以及Stripe条纹了。简单来说PayPal跟国内的支付宝有点类似&#xff0c;但是PayPal它是跨国…...

【Linux】项目自动化构建工具——make/Makefile

目录 1.make与Makefile的关系 Makefile make 项目清理 clean .PHONY 当我们编写一个较大的软件项目时&#xff0c;通常需要将多个源文件编译成可执行程序或库文件。为了简化这个过程&#xff0c;我们可以使用 make 工具和 Makefile 文件。Makefile 文件可以帮助我们自动…...

成本降低90%,OpenAI正式开放ChαtGΡΤ

今天凌晨&#xff0c;OpenAI官方发布ChαtGΡΤ和Whisper的接囗&#xff0c;开发人员现在可以通过API使用最新的文本生成和语音转文本功能。OpenAI称&#xff1a;通过一系列系统级优化&#xff0c;自去年12月以来&#xff0c;ChαtGΡΤ的成本降低了90%&#xff1b;现在OpenAI用…...

hls.js如何播放m3u8文件(实例)?

HLS&#xff08;HTTP Live Streaming&#xff09;是一种视频流传输协议&#xff0c;是苹果推出的适用于iOS与macOS平台的流媒体传输协议。它将视频分割成若干个小段&#xff0c;每个小段大小一般为2~10秒不等&#xff0c;并通过HTTP协议进行传输。通过在每个小段之间插入若干秒…...

大数据平台建设方法论集合

文章目录从0到1建设大数据解决方案大数据集群的方法论数据集成方法论机器学习算法平台方法论BI建设的方法论云原生大数据的方法论低代码数据中台的方法论大数据SRE运维方法论批流一体化建设的方法论数据治理的方法论湖仓一体化建设的方法论数据分析挖掘方法论数字化转型方法论数…...

25- 卷积神经网络(CNN)原理 (TensorFlow系列) (深度学习)

知识要点 卷积神经网络的几个主要结构: 卷积层&#xff08;Convolutions&#xff09;: Valid :不填充&#xff0c;也就是最终大小为卷积后的大小. Same&#xff1a;输出大小与原图大小一致&#xff0c;那么N ​变成了​N2P. padding-零填充. 池化层&#xff08;Subsampli…...

把数组里面数值排成最小的数

问题描述&#xff1a;输入一个正整数数组&#xff0c;将它们连接起来排成一个数&#xff0c;输出能排出的所有数字中最小的一个。例如输入数组{12, 567}&#xff0c;则输出这两个能排成的最小数字12567。请给出解决问题的算法&#xff0c;并证明该算法。 思路&#xff1a;先将…...

云his系统源码 SaaS应用 基于Angular+Nginx+Java+Spring开发

云his系统源码 SaaS应用 功能易扩 统一对外接口管理 一、系统概述&#xff1a; 本套云HIS系统采用主流成熟技术开发&#xff0c;软件结构简洁、代码规范易阅读&#xff0c;SaaS应用&#xff0c;全浏览器访问前后端分离&#xff0c;多服务协同&#xff0c;服务可拆分&#xff…...

小红书场景营销怎么做?场景营销主要模式有哪些

小红书作为新兴媒体领域的佼佼者&#xff0c;凭借着生动&#xff0c;直观&#xff0c;代入感等元素的分享推荐收揽了巨额的流量。但是&#xff0c;随着时代的脚步逐渐加快&#xff0c;发展和变革随之涌来&#xff0c;传统的营销已经无法满足。所以场景营销就出现了。今天就来和…...

c++基础——数组

数组数组是存放相同类型对象的容器&#xff0c;数组中存放的对象没有名字&#xff0c;而是要通过其所在的位置访问。数组的大小是固定的&#xff0c;不能随意改变数组的长度。定义数组数组的声明形如 a[b]&#xff0c;其中&#xff0c;a 是数组的名字&#xff0c;b 是数组中元素…...

odoo15 登录界面的标题自定义

odoo15 登录界面的标题自定义 原代码中查询:<title>Odoo<title> <html> <head><meta http-equiv="content-type" content="text/html; charset=utf-8" /><title>Odoo</title><link rel="shortcut icon…...

【内网服务通过跳板机和公网通信】花生壳内网穿透+Nginx内网转发+mqtt服务搭建

问题&#xff1a;服务不能暴露公网 客户的主机不能连外网&#xff0c;服务MQTT服务部署在内网。记做&#xff1a;p1 (computer 1)堡垒机&#xff08;跳板机&#xff09;可以连外网&#xff0c;内网IP 和 MQTT服务在同一个网段。记做&#xff1a;p2 (computer 2)对他人而言&…...

【多线程常见面试题】

谈谈 volatile关键字的用法? volatile能够保证内存可见性,强制从主内存中读取数据,此时如果有其他线程修改被volatile修饰的变量,可以第一时间读取到最新的值 Java多线程是如何实现数据共享的? JVM把内存分成了这几个区域: 方法区,堆区,栈区,程序计数器&#xff1b; 其中堆区…...

深度剖析指针(下)——“C”

各位CSDN的uu们你们好呀&#xff0c;今天小雅兰的内容还是我们的指针呀&#xff0c;上两篇博客我们基本上已经把知识点过了一遍&#xff0c;这篇博客就让小雅兰来带大家看一些和指针有关的题目吧&#xff0c;现在&#xff0c;就让我们进入指针的世界吧 复习&#xff1a; 数组和…...

爬虫与反爬虫技术简介

互联网的大数据时代的来临&#xff0c;网络爬虫也成了互联网中一个重要行业&#xff0c;它是一种自动获取网页数据信息的爬虫程序&#xff0c;是网站搜索引擎的重要组成部分。通过爬虫&#xff0c;可以获取自己想要的相关数据信息&#xff0c;让爬虫协助自己的工作&#xff0c;…...

Pag的2D渲染执行流程

Pag的渲染 背景 根据Pag文章里面说的&#xff0c;Pag之前长时间使用的Skia库作为底层渲染引擎。但由于Skia库体积过大&#xff0c;为了保证通用型&#xff08;比如兼容CPU渲染&#xff09;做了很多额外的事情。所以Pag的工程师们自己实现了一套2D图形框架替换掉Skia&#xff…...

Fillinger终极指南:Illustrator智能填充脚本如何10倍提升你的设计效率

Fillinger终极指南&#xff1a;Illustrator智能填充脚本如何10倍提升你的设计效率 【免费下载链接】illustrator-scripts Adobe Illustrator scripts 项目地址: https://gitcode.com/gh_mirrors/il/illustrator-scripts 你是否曾在Illustrator中为了填充图案而花费数小时…...

LeetCode 53. 最大子数组和 超详细题解(贪心+分治+动规)

LeetCode 53. 最大子数组和 超详细题解&#xff08;贪心分治动规&#xff09; &#x1f3f7;️ 标签&#xff1a;动态规划、贪心算法、分治法、数组、经典面试题 &#x1f4ca; 难度&#xff1a;简单 | &#x1f4dd; 题目编号&#xff1a;53 | &#x1f5c2;️ 题型&#xff1…...

Cadence IC617实战:VerilogA vs analogLib搭建全差分放大器,哪个更适合你?

Cadence IC617实战&#xff1a;VerilogA与analogLib全差分放大器设计深度对比 在模拟IC设计领域&#xff0c;全差分放大器作为基础构建模块&#xff0c;其实现方式直接影响设计效率和仿真精度。Cadence IC617作为行业标准工具&#xff0c;提供了VerilogA和analogLib两种截然不同…...

LuatOS扩展库API——【airlbs 】airlbs 定位服务

LuatOS 是物联网终端开发的常用工具&#xff0c;为轻量级嵌入式 Lua 脚本运行框架兼实时系统&#xff0c;基于 Lua 5.3 深度优化&#xff0c;适配 4G-Cat.1、MCU 等物联网终端硬件。其以 Lua 脚本开发&#xff0c;采用协程多任务架构&#xff0c;配套完善开发资源&#xff0c;含…...

ChatTTS 量化模型实战:从模型压缩到推理效率提升

最近在部署 ChatTTS 模型时&#xff0c;遇到了一个很实际的问题&#xff1a;模型虽然效果不错&#xff0c;但体积大、推理慢&#xff0c;在资源受限的边缘设备上跑起来非常吃力。显存动不动就占好几个G&#xff0c;生成一段语音的等待时间也让人着急。为了解决这个问题&#xf…...

AI写专著必备:优质工具大盘点,全方位提升专著撰写效率

撰写学术专著时&#xff0c;研究者需要在“内容的深度”和“覆盖的广度”之间找到一个恰当的平衡&#xff0c;而这正是许多人面临的主要难题。从深度出发&#xff0c;专著的核心论点需要具备足够的学术分量&#xff0c;不仅要清楚解答“是什么”&#xff0c;还应该深入探讨“为…...

OpenClaw+nanobot镜像:3步配置QQ聊天机器人触发AI任务

OpenClawnanobot镜像&#xff1a;3步配置QQ聊天机器人触发AI任务 1. 为什么选择OpenClawnanobot组合&#xff1f; 去年冬天&#xff0c;当我第一次尝试用QQ机器人自动处理群消息时&#xff0c;经历了漫长的环境配置地狱。直到发现星图平台的nanobot镜像&#xff0c;这个开箱即…...

OpenClaw对接Qwen3-VL:30B:飞书智能助手实战指南

OpenClaw对接Qwen3-VL:30B&#xff1a;飞书智能助手实战指南 1. 为什么选择这个组合&#xff1f; 去年冬天&#xff0c;当我第一次在本地电脑上部署Qwen3-VL:30B时&#xff0c;就被它的多模态能力震撼到了——这个模型不仅能理解文字&#xff0c;还能准确描述图片内容。但问题…...

雷达式多参数水文监测站

雷达式多参数水文监测站用先进的非接触式测量技术&#xff0c;结合水库断面参数精准计算流量&#xff0c;全程无需接触水体&#xff0c;从根源上规避水体环境对监测设备的影响。不受风、环境温度、雾霾、水体泥沙、漂浮物等外界因素干扰&#xff0c;即便在汛期水流浑浊、漂浮物…...

Z-Image-Turbo行业应用:教育领域课件插图自动化生成

Z-Image-Turbo行业应用&#xff1a;教育领域课件插图自动化生成 1. 教育课件插图的痛点与机遇 老师们每天都要准备各种教学课件&#xff0c;从数学公式图示到历史事件场景&#xff0c;从生物细胞结构到地理地貌展示。传统方式下&#xff0c;要么花费大量时间搜索合适的图片&a…...