【计算机视觉】图像分割中FCN、DeepLab、SegNet、U-Net、Mask R-CNN等算法的讲解(图文解释 超详细)

news2024/11/19 15:26:08

觉得有帮助请点赞关注收藏~~~

一、FCN分割算法

全卷积神经网络目标分割算法能够端到端的得到每个像素的目标分类结果,与传统的卷积神经网络只能输入固定大小图像和在网络的末端使用几个全连接层得到固定长度的特征向量不同,全卷积神经网络能够接受任意大小尺寸的输入图像,并且网络中没有使用全连接层,而是全部使用卷积层,全卷积神经网络采用反卷积层取代简单的线性插值算法,对最后一个卷积层的特征图进行上采样,使用反卷积可以对卷积进行逆操作

FCN算法采用VGGNet为基础网络,并把VGGNet的最后三层全连接层改为卷积层,最后采用跳跃式结构融合多尺度特征产生与原图大小一致的每个像素图类别图

二、DeepLab图像分割算法 

DeepLab图像分割算法主要由两部分所组成:深度卷积神经网络和条件随机场,该方法的主要创新点就是条件随机场部分,该方法的主要创新点就是条件随机场部分,为了能够取得类似于传统条件随机场的全局优化效果,利用循环的方式将上一层的输出作为下一层的输入,其中采用的条件随机场架构是基于全局连接模型,图像分割的条件随机场推理的关键因素就是将类别标号问题转变成概率推理问题。

DeepLab分割算法将条件随机场作为后置的处理加在全卷积神经网络的结果上,用来改善图像分割的结果,这种通过将全卷积神经网络与条件随机场组合得到了较好的结果

 三、SegNet图像分割算法

SegNet图像分割算法是一个编码器-解码器结构的卷积神经网络,SegNet算法结果如下图,这是一个对称网络,左边是卷积提取高维特征,卷积后不改变图片大小,通过池化来使图片变小,该部分为编码器部分,右边是反卷积与上采样,上采样使用的使反池化的方式将图像变大,通过反卷积使上采样后的图像信息变得丰富,使得在池化过程丢失的信息可以在学习后得到

SegNet中的池化层多了一个索引的功能,在每次进行最大池化的过程中都会保存滤波器中最大权值的相对位置,在利用反池化的方式进行上采样的时候就能对最大权值的区域信息进行恢复,其余信息则会丢失,因此,SegNet使用可学习的反卷积将缺失的内容进行填充。

四、U-Net算法 

U-Net是受到FCN启发针对医学图像做语义分割,且可以利用少量的数据学习到一个对边缘提取十分鲁棒的模型,在生物医学图像分割领域有很大作用,大体由收缩和扩张路径组成,因为形似一个字母U,得名U-Net,收缩路径利用传统卷积神经网络的卷积池化组件,其中经过一次下采样之后从层数变为原来的2倍,扩张路径由2×2的反卷积实现,反卷积的输出通道为原来通道数的一半,与原来的特征图串联,从而得到和原来一样多的通道数的特征图

U-net与其他常见的分割网络有一点非常不同的地方:U-net采用了完全不同的特征融合方式:拼接,U-net采用将特征在层(channel)的维度拼接在一起,形成更厚的特征。而FCN融合时使用的对应点相加,并没有形成更厚的特征。

五、Mask R-CNN算法 

它是一个小巧 灵活的通用对象实例分割框架,它不仅可对图像中的目标进行检测,还可以对每一个目标给出一个高质量的图像分割结果,取得了十分不错的结果

如图4-7所示,Mask R-CNN分为两个分支:

(1)第一个分支为原始Faster R-CNN的结构,它用于对候选窗口进行分类和窗口坐标回归。

(2)第二个分支对每一个感兴趣区域(Region of Interest,RoI)预测分割掩模,这个分支采用了图像分割的经典算法-FCN结构。

创作不易 觉得有帮助请点赞关注收藏~~~

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

HBase的数据模型和存储原理

HBase的数据模型 HBase中表的逻辑结构 Name Space(命名空间) 类似于关系型数据库的 DatabBase 概念,每个命名空间下有多个表。HBase有两个自带的命名空间,分别是 hbase 和 default,hbase 中存放的是 HBase 内置的表&a…

向 Excel 和 PowerPoint 添加可编辑地图的指南

本指南规定: 如何将 shapefile 转换为 svg 文件(如果后者不存在) 如何使用 Excel 重命名 svg 文件中的对象以使对象具有正确的地理名称,以及如何将这些添加为 PowerPoint 中的可编辑地图 这样做的目的是为那些没有或不知道该软件的人提供 QGIS 制图的替代方案。通过提供某个…

如何在 Linux 的 shell 里针对特定用户/组来限制某些命令的使用

0-前言 最近,业务侧有个需求,需要禁止特定用户访问linux特定的命令,如禁止用户A使用rm命令。 我们知道,在linux系统中,一切皆文件。 那么,这个问题也可以泛化为: 如何在linux里限制特定用户…

视频理解论文串讲(上)【论文精读】

文章目录1. DeepVedio【CNN 首次 for 视频理解】2. Two-Stream【双流网络】针对上面不同方向,有不同的代表工作LSTM late fusion 方向【Beyond-short-snippets】Early fusion方向【Convolutional fusion】长视频 【TSN temporal segment 分段的思想,good…

5分钟搞定Linux top命令的基本用法

在linux终端中,输入top, 按下Enter,立即进入top界面 如果你操作正确,应该会看到了下面这样的界面。 此情此景,怎么样是不是看懵逼了 不要慌,坐下来耐心听我逼逼赖赖你就会明白这一堆内容是干嘛的 下面介绍每一项分别是…

2022.12.8 半导体器件物理

作业 用迁移电流来推导出公式 电流是I,J是电流密度,W就是横截面 T是这个薄膜的厚度(我们最后可以消除掉) X就是空间位置,0就是在电极的一端 为什么要减去 因为只有大于阈值电压,才会有水流通过&#xff…

如此简单的时间复杂度计算方法:大O渐进法,你确定不进来康康

对于时间复杂度,空间复杂度,想必这个是大家在学习数据结构的初级阶段就会第一步认识的吧!!但是,对于复杂度的计算,涉及到了大O渐进法,这个方法是一个笼统的概念,所求得的结果&#x…

大一作业HTML个人网页作业(宠物狗)

🎉精彩专栏推荐 💭文末获取联系 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业: 【📚毕设项目精品实战案例 (10…

超算对我们的生活有着什么样的影响?

为什么各国都去抢超算的世界第一?因为它对人们的生活有着很大的影响。 一、核武器的成功研发离不开超算 对美国而言,超算的作用首先在研制核武器领域。加利福尼亚的利弗莫尔国家实验室、新墨西哥州的洛斯阿拉莫斯国家实验室、圣地亚国家实验室、橡树岭…

【分立元件】案例:一小批量生产就发现蜂鸣器一致性差?

在文章: 【分立元件】有源蜂鸣器和无源蜂鸣器有什么区别?_阳光宅男李光熠的博客-CSDN博客_有源和无源蜂鸣器 我们讲到有源蜂鸣器内部带震荡源,发声频率固定。无源内部不带震荡源,通过方波去驱动,发音频率可改变。一般…

(Java)SpringMVC学习笔记(一)

前言 今天开始学习SpringMVC,还是跟着尚硅谷视频自学,从两方面把握学习效果,一是知识点理解程度,一是实践程度,而我会将实践具体实现写以成文,用以回顾与分享 JavaWeb知识点简单回顾 JavaBean技术 为了…

订单服务------技术点及亮点

大技术 线程池来实现异步任务(亮点1) /*** 去结算确认页时封装订单确认页返回需要用的数据* return* throws ExecutionException* throws InterruptedException*/Overridepublic OrderConfirmVo confirmOrder() throws ExecutionException, Interrupted…

小红书推广笔记怎么合作?这里都给大家梳理好啦

截止 2021 年 11 月,小红书月活已达到 2 亿。其中72% 是 90 后群体,50% 的用户在一二线城市。 这些用户流量有着高消费、爱时尚、爱分享、追求品质生活的特点,所以小红书逐渐成为众多品牌方种草推广的必争之地。 小红书推广笔记怎么合作的呢…

FPGA学习笔记(十)IP核之PLL锁相环的学习总结

系列文章目录 一、FPGA学习笔记(一)入门背景、软件及时钟约束 二、FPGA学习笔记(二)Verilog语法初步学习(语法篇1) 三、FPGA学习笔记(三) 流水灯入门FPGA设计流程 四、FPGA学习笔记(四&…

pytest自动化测试框架详解+mark标记+fixture夹具

介绍 pytest是python的一种单元测试框架,同自带unittest框架类似,功能,效率更强大 特点: 1. 非常容易上手,入门简单,丰富的文档 2. 支持参数化 3. 执行测试用例的过程中,跳过某些用例&#x…

Python环境搭建

将向大家介绍如何在本地搭建Python开发环境。 Python可应用于多平台包括 Linux 和 Mac OS X。 你可以通过终端窗口输入 "python" 命令来查看本地是否已经安装Python以及Python的安装版本。 Unix (Solaris, Linux, FreeBSD, AIX, HP/UX, SunOS, IRIX, 等等。) W…

Dev-C++ 的下载、安装和配置

Dev-C 的下载、安装和配置 Dev-C 下载 我们直接打开 https://sourceforge.net/projects/orwelldevcpp/ 点击 Download 进行下载即可,如下图所示: 下载速度也不错,很快就可以下载完成了。 不像某些博主,为了引流量,…

Cadence Allegro PCB设计88问解析(二十二) 之 Allegro中放入元器件

一个学习信号完整性仿真的layout工程师 在之前的文章和大家介绍过Allegro中导入网表,那么导入网表成功之后,还在Allegro在进行一步就是放入导入成功的器件。下面和大家简单介绍具体的操作过程: 第一步:添加版外形outline 我们在…

DAX:SUMMARIZE的秘密

作为一个查询函数,SUMMARIZE 执行三个操作: 它可以按表本身或相关表的任何列对表进行分组;它可以创建新列,在行上下文和过滤上下文中计算表达式;它可以产生不同级别的小计(subtotal)。 在 SUMMARIZE 的三个主要操作中&…

PHP代码审计系列(三)

PHP代码审计系列&#xff08;三&#xff09; 本系列将收集多个PHP代码安全审计项目从易到难&#xff0c;并加入个人详细的源码解读。此系列将进行持续更新。 sql闭合绕过 源码如下 <?phpif($_POST[user] && $_POST[pass]) {$conn mysql_connect("*******…