图像分割实战-系列教程12:deeplab系列算法概述

🍁🍁🍁图像分割实战-系列教程 总目录

有任何问题欢迎在下面留言
本篇文章的代码运行界面均在Pycharm中进行
本篇文章配套的代码资源已经上传

1、空洞卷积

图像分割中的传统做法:为了增大感受野,通常都会选择pooling操作,但是也会丢失一部分信息

当需要检测、分割的目标比较小的时候,这些小目标在图像中的占据的位置也比较小,只需要局部的特征就可以识别,那些目标比较大、还有识别难度比较大的目标,只用局部的特征就不好做这个物体的识别。

这个应该怎么做呢?一般在深度学习中,需要堆叠很多很多层,目的就是通过各种各样的卷积和偏执权重参数去拟合数据,还有就是扩充一个东西,就是感受野。经过多次卷积,特征图的一个点,可能会代表原始图像中一个比较大的区域,一个点所能代表的区域大小,就是感受野。所以目标大、难度的物体,包含的特征比较多,所以需要多次卷积至特征图比较小的时候,得到高阶特别才能比较好的识别这个物体。

一般的做法就是,每隔两次卷积,做一次pooling,并且重复这个堆叠,堆叠的越多感受野肯定越大。但是在感受野增大的过程中,也会丢失一些信息,这里的问题出在哪儿呢?就是做pooling的时候丢失了信息。

如图所示,左边为传统卷积,右边为空洞卷积(dialate convolution)

传统卷积,加上padding的原因是因为边缘信息被计算的比较少,空洞卷积解决这个问题的方法是卷积个数没变,但是卷积区域变化了,每次卷积过程中,只有部分数据参与计算,这样的计算方式比传统卷积的特征的感受野变大了一些。

通过设置dilated参数可以得到不同感受野的特征(3 * 3,7 * 7,15 * 15)
在这里插入图片描述

2、空洞卷积的优势

  • 图像分割任务中(其他场景也适用)需要较大感受野来更好完成任务
  • 通过设置dilation rate参数来完成空洞卷积,并没有额外计算
  • 可以按照参数扩大任意倍数的感受野,而且没有引入额外的参数
  • 应用简单,就是卷积层中多设置一个参数就可以了

3、感受野

deeplab这个网络总是在强调感受野这个概念

如果堆叠3个3x3的卷积层,并且保持滑动窗口步长为1,其感受野就是77的了,这跟一个使用77卷积核的结果是一样的,那为什么非要堆叠3个小卷积呢?
在这里插入图片描述
假设输入大小都是h* w *c,并且都使用c个卷积核(得到c个特征图),可以来计算一下其各自所需参数:
在这里插入图片描述
很明显,堆叠小的卷积核所需的参数更少一些,并且卷积过程越多,特征提取也会越细致,加入的非线性变换也随着增多,因为每次卷积后都会经过激活函数和BatchNormalization,还不会增大权重参数个数,这就是VGG网络的基本出发点,用小的卷积核来完成体特征提取操作

4、SPP-Layer

SPP层,spatial pyramid pooling layer

  • 网络中通常要求输入固定
  • SPP通用不同的池化层
  • 再进特征拼接
  • 只要保障输入特征固定就可以了

在这里插入图片描述
在图像处理中,有图像金字塔这个概念,就是将一个图像调整多个分辨率,对应出多个图像就是图像金字塔。对应到网络中,实际的输入大小是不确定的,如果能让网络自己能够适应,但是被全连接层限制住了,因为最后输出的分类个数是确定的。

SPP层就是将特征图分成3种,假设特征图是n * n,将其分别分为a * a、b * b、c * c个格子,其中a>b>c,然后每个格子都通过Maxpooling,最后得到a * a、b * b、c * c个特征值,再将其拼接起来,但是在这里是不涉及到特征图的个数的,所以还会乘上特征图的个数。这个过程如上图所示。

4.1 常用的多尺度特征提取方法:

这些方法都比较通用,在各项视觉任务中均可以使用
在这里插入图片描述
(a) 传统的图像金字塔方法,将不同尺度的图像经过多层卷积后做特征拼接
(b) 第二种就是Unet方法
© 第三张就是空洞卷积
(d) 第四种即为SPP结构

5 ASPP

ASPP(atrous convolution SPP),其实就是跟SPP差不多,只不过引入了不同倍率的空洞卷积

在这里插入图片描述

6、deepLabV3+

整体网络架构:
效果提升不算多
Backbone可以改进
创新不多所以不是4版
在这里插入图片描述
如图所示,在Encoder部分,先经过带有空洞卷积层的DCNN,再经过有4个不同尺度并行的空洞卷积,最后结构拼接后再经过一维卷积得到一个特征图,这就是Encoder的输出。

而Decoder的输入就是就是DCNN的浅层输出,也就是不是最后一层的输出。得到的是浅层特征,与Encoder的输出都经过一维卷积,再拼接在一起,而为了匹配特征图长宽大小,Encoder还会进行上采样操作。

拼接的特征再经过卷积和上采样,得到最后的输出。

这就是deeplab的基本概述和整体思想。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/305170.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

centos7 yum添加源或换源

yum添加源或换源 一般来说yum源是我们需要下载的软件的远程仓库地址(当然也可以配置本地源),centos系统带有几个官方源,默认启用的仅有base,updates和extras三个。有时我们需要的软件在官方源中没有,这时我们就需要添加第三方源或换默认源。…

Halcon根据灰度特征值选择区域select_gray

Halcon根据灰度特征值选择区域 与select_shape算子类似,灰度值图像也可以快捷地根据特征值选择符合设定条件的区域。select_gray算子用于实现这一功能,该算子能接受一组区域作为输入,然后根据选定的特征计算其是否满足特定的条件。当所有区域…

1.5号io网络

僵尸进程和孤儿进程 僵尸进程 孤儿进程 守护进程 1.守护进程相当于一个服务,不依赖于终端而存在 2.守护进程随着系统的启动而启动,关闭而关闭 3.守护进程创建流程 1、创建一个孤儿进程 2、重设守护进程的会话id和组id 3、修改守护进程的操作目录为…

指定linux文件夹下所有文件赋权命令“chmod -R 755”

仓库:Ai-trainee/GPT-Prompts-Hub 下面我们假设要为:/opt/robot/lib/robot_control/下所有子文件赋权 如果要为 robot_control 目录中的所有文件分配权限(在 Linux 术语中也称为“更改文件权限”或“chmod”),则可以…

【从零开始学技术】Fiddler 抓取 https 请求大全

1.Fiddler代理浏览器设置 注意浏览器代理区别 Chrome/IE浏览器使用的都是系统代理设置 在chrome浏览器的设置中搜索代理,可以看到 打开IE浏览器,选择设置->Internet选项 Firefox浏览器使用的是单独的一套代理系统 在Firefox的代理设置中,我…

锂电池放电结束后电压回升,充电结束后电压下降

放电时,撤去负载,开路电压会上升;充电时,撤去电源,开路电压会下降。 一、极化 极化是指事物在一定条件下发生两极分化,使其性质相对于原来状态有所偏离的现象。 二、电化学极化 对于任何电化学体系中&am…

java注解学习

java注解 Annotation 为什么要学注解? 在日常开发中,基本都是在使用别人定义或是各种框架的注解,比如Spring框架中常用的一些注解:Controller、Service、RequestMapping,以此来实现某些功能,但是却不知道如…

玩转硬件之C51的玩法(二)——模拟按键模块

模拟按键模块是一种常见的电子元件,它具有简单、易用、可靠的特点,被广泛应用于各种电子设备中。它的工作原理是通过按下按钮,使开关接通或断开电路,从而实现控制电子设备的功能。 AD Keyboard模块可以适用Arduino和C51&#xff…

xss-labs(6-9)

level6:欢迎来到level6 老规矩还是先看看输入框的闭合情况 尝试事件函数绕过 test" onclick="alert(欢迎来钓鱼) 既然事件函数被转义了,那就使用我们第二关用过的绕过方法插入标签看看 test"><script>alert(欢迎来钓鱼)</script>// <

Excel:通过excel将表数据批量转换成SQL语句

这里有一张表《student》&#xff0c;里面有10条测试数据&#xff0c;现在将这10条测试数据自动生成 insert语句&#xff0c;去数据库 批量执行 P.S. 主要用到excel表格中的 CONCATENATE函数&#xff0c;将单元格里面的内容填入到sql里面对应的位置 1. 先写好一条insert语句&a…

定时器中断控制的独立式键盘扫描实验

#include<reg51.h> //包含51单片机寄存器定义的头文件 sbit S1P1^4; //将S1位定义为P1.4引脚 sbit S2P1^5; //将S2位定义为P1.5引脚 sbit S3P1^6; //将S3位定义为P1.6引脚 sbit S4P1^7; //将S4位定义为P1.7引脚 unsigned char keyval; /…

WPF 基础入门(资源字典)

资源字典 每个Resources属性存储着一个资源字典集合。如果希望在多个项目之间共享资源的话&#xff0c;就可以创建一个资源字典。资源字段是一个简单的XAML文档&#xff0c;该文档就是用于存储资源的&#xff0c;可以通过右键项目->添加资源字典的方式来添加一个资源字典文件…

如何实现在IDEA中远程访问家里或者公司的数据库远程协作开发

文章目录 1. 本地连接测试2. Windows安装Cpolar3. 配置Mysql公网地址4. IDEA远程连接Mysql小结 5. 固定连接公网地址6. 固定地址连接测试 IDEA作为Java开发最主力的工具&#xff0c;在开发过程中需要经常用到数据库&#xff0c;如Mysql数据库&#xff0c;但是在IDEA中只能连接本…

批量剪辑方法:掌握视频剪辑技巧,按指定时长轻松分割视频

在视频制作和编辑过程中&#xff0c;经常要批量处理和剪辑大量的视频片段。学会批量剪辑方法可以提高工作效率&#xff0c;还可以使视频编辑更加准确和高效。下面来看下云炫AI智剪如何按指定时长轻松分割视频的批量剪辑方法。 分割后的视频文件效果&#xff0c;已分割分段的视…

B端企业画像的数据获取和构建

什么是企业画像&#xff1f; 不管是企业画像还是C端用户画像&#xff0c;都需要展示两类属性&#xff1a; 企业本身的属性&#xff1b;依赖于客户和企业关系的画像&#xff0c;这部分属性就是我们在企业画像中要做的重要内容。 举个例子&#xff1a;某餐厅是A产品进货的客户…

python对常见的激活函数绘图操作(详细代码讲解)

写论文的时候需要做一些激活函数的图像&#xff0c;为此将常见的激活函数进行整理汇总了一下&#xff0c;方便后续的复习 激活函数的作用是为让模型处理非线性问题&#xff0c;故次激活函数都是非线性的 生活中&#xff0c;非线性问题占大多数&#xff0c;而模型的训练通常都是…

《亚太教育》是什么级别的期刊?是正规期刊吗?能评职称吗?

《亚太教育》主要发表教育理论研究、教育教学实践、学校管理、学科教育、科研管理等学术论文以及其他与教育教学相关的学术论文和研究成果,现征集教育管理以及各学科优秀论文。欢迎.各位教师、教育工作者及高校学生踊跃投稿。 收录情况&#xff1a;知网万方维普收录 投稿方式&a…

前端国际化之痛点(二):多包多库场景下联动多语言

前言 VoerkaI18n是一款非常优秀的前端国际化解决方案&#xff0c;其开发的出发点是为了解决现存多语言的一些痛点,接下来几篇文章将分别进行分析。 前端国际化之痛点(一)&#xff1a;让人头疼的词条Key前端国际化之痛点(二)&#xff1a;多包多库场景下联动多语言前端国际化之…

老杨说运维 | 年末大讲回顾:运维的尽头也是大模型吗?

哈喽~朋友们&#xff0c;这么快又见面啦。前阵子我们给CEO老杨安排了一场年末大讲&#xff0c;主要是跟大家聊聊智能运维的“智”与“能”以及剖析时下热点----运维大模型。后台收到了不少朋友的反馈&#xff0c;小编看了大受鼓舞并暗下决心----新的一年&#xff0c;希望能多安…

leetcode 每日一题 2024年01月09日 字符串中的额外字符

题目 字符串中的额外字符 给你一个下标从 0 开始的字符串 s 和一个单词字典 dictionary 。你需要将 s 分割成若干个 互不重叠 的子字符串&#xff0c;每个子字符串都在 dictionary 中出现过。s 中可能会有一些 额外的字符 不在任何子字符串中。 请你采取最优策略分割 s &…