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

【语义分割】12个主流算法架构介绍、数据集推荐、总结、挑战和未来发展

背景语义分割是将图像中的每个像素按其语义类别进行分类从而实现像素级别的语义理解。其在自动驾驶、医学图像、结构损伤检测等领域有着广泛的应用。1.主流算法架构1.1 U-Net论文地址https://arxiv.org/abs/1505.04597U-Net2015年由Ronneberger等人提出,是经典的编码-解码架构。其中编码器部分利用卷积层和池化层逐步提取输入图像的特征获取输入图像特征的潜在表示。解码器部分使用转置卷积和卷积从编码器的各级分辨率级别还原目标的细节特征。U-Net因其结构简单、易于训练和有效性而受到青睐同时也为图像分割任务提供了一个强大的基准模型。1.2 SegNet论文地址https://arxiv.org/abs/1511.00561SegNet是2016年由Cambridge提出旨在解决自动驾驶的图像语义分割深度网络。SegNet与U-Net网络类似主要的区别在于SegNet提出了记录池化的位置反池化时恢复。SegNet在解码恢复信息时不再和编码器对应的分辨率级别进行拼接操作而是直接进行转置卷积。1.3 PSPNet论文地址https://arxiv.org/pdf/1612.01105.pdfPSPNet是2017年提出的一种用于语义分割的深度卷积神经网络。其架构的主要特点是金字塔池化模块Pyramid Pooling Module。PSPNet最大的创新是引入金字塔池化模块通过不同尺度的池化操作获得全局和局部信息。输入特征图被分割为不同大小的区域并进行池化操作以提取每个区域的特征。不同池化尺度下的特征被级联在一起形成了一个更加丰富和多样的特征表示。1.4 UNet论文https://arxiv.org/pdf/1807.10165.pdfUnet于2018年提出Unet继承了Unet的结构同时又借鉴了DenseNet的稠密连接方式。其主要有四个结构特点1密集连接的多级UNet结构UNet采用了分层的、多级的UNet结构。每个UNet模块都由一个编码器和多个解码器组成。每个解码器的特征图与上一级解码器的所有特征图相连接形成了一种密集连接的结构有助于更好地传递和利用不同层级的信息。2嵌套连接与跳跃连接UNet结构通过嵌套连接将不同分辨率的特征图相互连接以多层级方式传递信息。跳跃连接也被保留在不同层次使得不同分辨率的信息可以更有效地在编码器和解码器之间传递。3特征重组和特征融合每个UNet模块内部通过特征重组和特征融合操作将不同分辨率和不同层级的特征图结合起来增强了特征表达的多样性和丰富性。4多尺度特征提取UNet在编码器和解码器中都包含了多尺度特征提取模块有助于捕获不同尺度下的语义信息。1.5 DeepLabv3论文https://arxiv.org/pdf/1802.02611v3.pdfDeepLabv3是由Google于2018年提出的图像语义分割模型旨在解决语义分割任务中的精度和效率问题。它是DeepLab系列模型的最新版本结合了深度卷积网络和空洞卷积网络的优势并引入了空间金字塔池化模块(ASPP)和解码器模块利用多尺度信息增强模型的性能有助于解决对象尺度不一致的问题。DeepLabv3整体来说也是一个编码-解码架构其中编码器中的DCNN是可以按照具体任务需求修改的backbone。举例来说DCNN可以是高效轻便的MobileNet、EfficientNet也可以是深度残差网络ResNet也可以是经典的Xception、Inception等网络。具体的架构方案需要根据当前的任务做具体的设计和调整。1.6 HRNet论文https://arxiv.org/pdf/1904.04514.pdfHRNet于2019年提出作者通过通过聚合来自所有并行卷积的上采样的表示来增强高分辨率表示而不是仅聚合来自高分辨率卷积的表示。这种架构设计模式是模型有更强的表征能力。其架构的主要特点如下1多分辨率特征金字塔HRNet在网络的不同分支中保持多个分辨率的特征图同时通过高分辨率和低分辨率的交互保留了更多的细节信息。通过多个分支每个分支都以不同的分辨率来处理输入图像然后进行特征融合以综合不同分辨率的信息。2多层级信息融合HRNet内部进行多层级的信息融合使得不同分辨率特征图之间可以相互交流和融合充分利用不同分辨率的特征。3高分辨率信息保留通过保留高分辨率特征图HRNet在姿态估计和图像分割任务中能够更好地捕获和利用细节信息避免了传统网络中由于下采样导致的低分辨率特征损失问题。4通道交流HRNet在不同分辨率特征图之间引入了通道交流channel fusion使得不同分辨率的特征图可以相互交流和融合提高了特征的丰富性和表达能力。1.7 U2NetU2Net于2020年发表于CVPR。U2Net的主体是一个两层嵌套的U型结构网络中的每个编码器和解码器模块也是类似UNet的结构也就是在大的UNet中嵌入了一堆小UNet。其架构的主要特点如下1ReSidual U块RSU中混合了不同大小的感受野它能够从不同的尺度捕获更多的上下文信息。2RSU块中使用了池化操作它增加了整个架构的深度而不显著增加计算成本。这种架构使得使用者能够从头开始训练深度网络而无需使用图像分类任务中的主干backbone。1.8 HRNet-OCR论文https://arxiv.org/pdf/1909.11065.pdfHRNet-OCR于2021年提出它在HRNet的基础上进一步引入了OCR Object-Contextual Representations机制。这种OCR机制是一种简单而有效的对象上下文表示方法帮助网络更好地理解图像中不同对象之间的关系和上下文信息。OCR模块在每个HRNet分支上引入了空间注意力机制Spatial Attention和对象级别的上下文信息建模。空间注意力机制有助于网络学习不同区域的重要性对象级别的上下文信息帮助网络更好地理解对象之间的联系。1.9 SETR论文地址https://arxiv.org/pdf/2012.15840.pdfSETR于2021年提出是基于ViT来进行语义分割的第一个代表模型。它提出以纯Transformer结构的编码器来代替CNN编码器改变现有的语义分割模型架构。其架构的主要特点如下1Image to sequence 图像序列化方法作者参考了ViT的做法即对输入图像进行切片处理将每一个2D的图像切片patch视为一个“1D”的序列作为整体输入到网络当中。2Transformer: 通过将序列输入到Transformer架构可进行特征的提取其主要包含两个部分Multi-head Self-Attention (MSA) and Multilayer Perceptron (MLP) blocks。3解码作者给出了三种解码上采样方式即朴素上采样、渐进上采样、多级特征融合类似于特征金字塔。1.10 SegFormer论文地址https://arxiv.org/pdf/2105.15203.pdfSegFormer于2021年提出其架构的主要特点如下1patch的局部连续性之前ViT做patch embedding时每个patch都是独立的而SegFormer对patch设计成有重叠的保证局部连续性。2多尺度融合Encoder输出多尺度的特征Decoder将多尺度的特征融合在一起这使得模型能够同时捕捉高分辨率的粗略特征和低分辨率的细小特征优化分割结果。3轻量级decoder: 编码器中分层Transformer的设计使其相较于CNN有更大的感受野这使得在设计decoder时可以仅由MLP层组成。所以decoder的计算量和参数量非常小从而使得整个模型可以高效运行简单直接。并且通过聚合不同层的信息结合了局部和全局注意力。1.11 Swin-UNet论文地址https://arxiv.org/pdf/2105.05537.pdfSwin-UNet于2021年提出它是一个类Unet的纯Transformer。Token化的图像patch被输入到基于transformer的U型编码器-解码器架构中并具有跳跃连接用于局部全局语义特征学习。具体来说Swin-UNet使用带有移位窗口(shifted windows)的分层Swin Transformer作为编码器来提取上下文特征设计了一种基于对称Swin Transformer的patch expanding层解码器对特征图进行上采样操作恢复特征图的空间分辨率。1.12 SegNeXt论文地址https://arxiv.org/abs/2209.08575SegNeXt于2022提出展示了卷积注意力在编码上下文信息上比transformer自注意力更有效。其架构特点主要如下1采用一种新的多尺度卷积注意力Multi-Scale Convolutional Attention, MSCA。MSCA包含三个部分分别是深度可分离卷积获取局部信息多分支深度可分离strip卷积以捕获多尺度上下文1×1卷积建模不同通道之间的关系2在解码器中轻量级的Hamburger 以进一步建模全局上下文。2. 数据集推荐在这里小编针对道路交通领域推荐一个易于上手的道路标记数据集CeyMo Dataset。所有图像均配备有像素级人工标注的道路标记真值图像Ground-truth。数据集的详细信息可见GitHub - oshadajay/CeyMo: CeyMo: See More on Roads - A Novel Benchmark Dataset for Road Marking Detection (IEEE/CVF WACV 2022)。针对语义分割任务为了方便测试小编将数据集进行了处理将原来的11个标记类别变成了一个类别。如果想要处理后的数据集可从百度网盘下载。链接https://pan.baidu.com/s/1p6mGDiCGEAvoyBMwD0twowpwd2twg提取码2twg此外小编用处理后的数据集测试了几个语义分割模型。所有语义分割架构均在Tensorflow2.0环境下测试。在测试集上参考测试结果如下ModelF1-score(%)IOU(%)UNet91.0082.81DeepLabv389.9681.12HRNetV2-W4886.3675.46HRNet-OCR88.2078.30PSPNet88.1078.15SegNet88.8078.85SegFormer88.9179.43SegNeXt90.2982.98总结回顾近10年来经典的语义分割模型无论是基于CNN的架构还是基于Transformer的架构最核心的理念是“编码-解码”。直观上来讲就是通过下采样获取特征的潜在表示再通过上采样从抽象的底层特征表示中恢复目标的细节信息。从交通、医学、遥感、自动驾驶、智能施工管控等领域近些年发表的关于语义分割的论文来看采用的架构大多是以上所提到的模型的变体包括但不限于添加各种注意力机制模块、更换主流的特征提取网络backbone、CNN与transformer混合设计、多尺度特征融合。其中一个主要原因是面对不同的分割任务和分割对象已有的语义分割架构并不能保证表现得很出色。所以在利用语义分割算法解决自己特定领域的问题时往往需要结合实际需求精度为第一要素、速度为第一要素、还是速度和精度要达到出色的平衡对架构进行改造设计。挑战与未来发展目前来看各种语义分割架构层出不穷但本质上都是基于最小元素“卷积”或“Transformer”的各种组合变体。未来针对特定的专业分割任务仍需要结合具体场景和需求选择或搭建适合自己的架构体系。除此之外以上所提到的语义分割架构全是基于监督学习的也就是有标签的深度学习。但现实情况是很多任务的标签获取很难或者非常珍贵。面对这一痛点基于自监督学习、半监督学习以及无监督学习的深度学习范式是一个非常不错的研究思路。目前已有很多学者开展了对自监督学习、半监督学习以及无监督学习的研究并取得了一定的进展。关于这一块的内容小编将在后续进行介绍。

相关文章:

【语义分割】12个主流算法架构介绍、数据集推荐、总结、挑战和未来发展

背景 语义分割是将图像中的每个像素按其语义类别进行分类,从而实现像素级别的语义理解。其在自动驾驶、医学图像、结构损伤检测等领域有着广泛的应用。 1.主流算法架构 1.1 U-Net 论文地址:https://arxiv.org/abs/1505.04597 U-Net2015年由Ronneberge…...

Python-flask基于安卓的的酒店管理系统 小程序

目录技术栈选择功能模块设计后端实现要点小程序前端开发接口安全与性能测试与部署时间规划注意事项项目技术支持可定制开发之功能创新亮点源码获取详细视频演示 :文章底部获取博主联系方式!同行可合作技术栈选择 后端采用Python Flask框架,轻…...

Python-flask向家租房 房屋租赁微信小程序t9353

目录需求分析技术栈选型数据库设计API接口开发微信小程序集成测试与部署安全与性能优化迭代计划项目技术支持可定制开发之功能创新亮点源码获取详细视频演示 :文章底部获取博主联系方式!同行可合作需求分析 明确房屋租赁微信小程序的核心功能需求&#…...

最新真空泵配备专利吹扫注入系统

普发真空Fab解决方案(Pfeiffer VacuumFab Solutions,隶属于 Busch 集团),已推出 UltiDry 多级罗茨真空泵。这款新泵专为要求严苛的半导体应用而设计,旨在抵御腐蚀性气体、具有侵蚀性的副产物以及大量的粉末负载。其无油…...

【开题答辩全过程】以 基于Springboot的养老服务管理系统的设计与实现为例,包含答辩的问题和答案

个人简介一名14年经验的资深毕设内行人,语言擅长Java、php、微信小程序、Python、Golang、安卓Android等开发项目包括大数据、深度学习、网站、小程序、安卓、算法。平常会做一些项目定制化开发、代码讲解、答辩教学、文档编写、也懂一些降重方面的技巧。感谢大家的…...

【开题答辩全过程】以 基于微信平台的电子阅读器为例,包含答辩的问题和答案

个人简介一名14年经验的资深毕设内行人,语言擅长Java、php、微信小程序、Python、Golang、安卓Android等开发项目包括大数据、深度学习、网站、小程序、安卓、算法。平常会做一些项目定制化开发、代码讲解、答辩教学、文档编写、也懂一些降重方面的技巧。感谢大家的…...

好物分享 | gstack:将 Claude Code 从通用助手升级为专属专家团队

在日常软件开发过程中,我们常常陷入一种与 AI 编程助手博弈的困境。当你向通用型 AI 代理提出一个需求时,它往往会字面意义上地执行你的指令,却忽略了背后的产品目标。你让它修复一个 bug,它可能只修复了表面现象而忽略了架构隐患…...

【开题答辩全过程】以 人才培养方案修订管理系统为例,包含答辩的问题和答案

个人简介一名14年经验的资深毕设内行人,语言擅长Java、php、微信小程序、Python、Golang、安卓Android等开发项目包括大数据、深度学习、网站、小程序、安卓、算法。平常会做一些项目定制化开发、代码讲解、答辩教学、文档编写、也懂一些降重方面的技巧。感谢大家的…...

【开题答辩全过程】以 商城后台管理系统1为例,包含答辩的问题和答案

个人简介 一名14年经验的资深毕设内行人,语言擅长Java、php、微信小程序、Python、Golang、安卓Android等 开发项目包括大数据、深度学习、网站、小程序、安卓、算法。平常会做一些项目定制化开发、代码讲解、答辩教学、文档编写、也懂一些降重方面的技巧。 感谢大家…...

【问题解决】org.springframework.web.util.NestedServletException Handler dispatch failed;

详细异常信息:org.springframework.web.util.NestedServletException: Handler dispatch failed; nested exception is java.lang.NoClassDefFoundError: javax/xml/bind/DatatypeConverter at org.springframework.web.servlet.DispatcherServlet.doDispatch(Dispa…...

全面打开SEO之门,从零基础到有效提升网站流量的方法

在探索“SEO的从零起步”过程中,了解内容的核心要素十分重要。首先,优质内容是吸引用户和搜索引擎的关键。内容需要具备原创性和实用性,以满足用户需求并提高网站的可信度。此外,关键词的合理使用也是不容忽视的一环,选…...

MySQL 无法支撑亿级订单的多维聚合查询的庖丁解牛

MySQL 无法支撑亿级订单的多维聚合查询,是OLTP(在线事务处理)与 OLAP(在线分析处理)本质错位的典型表现。 试图用 MySQL 做海量数据分析,就像用法拉利去拉煤——不是车不好,而是用途错了。MySQL…...

ERP有效把控产品ROI、库存和毛利的庖丁解牛

ERP 有效把控产品 ROI、库存和毛利,是跨境电商卖家从“粗放式增长”迈向“精细化运营”的分水岭。 这三者构成了电商经营的**“不可能三角”**: 高 ROI 需要精准投放和选品。低库存 需要极致周转,但可能增加断货风险。高毛利 需要高定价或低成…...

智能科学毕业设计最全课题帮助

1 引言 毕业设计是大家学习生涯的最重要的里程碑,它不仅是对四年所学知识的综合运用,更是展示个人技术能力和创新思维的重要过程。选择一个合适的毕业设计题目至关重要,它应该既能体现你的专业能力,又能满足实际应用需求&#xff…...

【开题答辩全过程】以 基于微信小程序地方小吃分享平台设计与实现为例,包含答辩的问题和答案

个人简介一名14年经验的资深毕设内行人,语言擅长Java、php、微信小程序、Python、Golang、安卓Android等开发项目包括大数据、深度学习、网站、小程序、安卓、算法。平常会做一些项目定制化开发、代码讲解、答辩教学、文档编写、也懂一些降重方面的技巧。感谢大家的…...

【开题答辩全过程】以 山西能源学院电子报销为例,包含答辩的问题和答案

个人简介一名14年经验的资深毕设内行人,语言擅长Java、php、微信小程序、Python、Golang、安卓Android等开发项目包括大数据、深度学习、网站、小程序、安卓、算法。平常会做一些项目定制化开发、代码讲解、答辩教学、文档编写、也懂一些降重方面的技巧。感谢大家的…...

第7篇:基于传递函数的PI控制器设计

你是否遇到过? 做工控现场调试、机器人底盘闭环控制,或是自动驾驶低速跟车、液位恒温控制时,你是不是总被这类问题卡住:只用单纯的比例调节,温度、电机转速、水箱液位要么死活稳不住目标值,始终留一截稳态偏…...

weixin230疫苗预约小程序ssm(文档+源码)_kaic

第5章 系统实现 进入到这个环节,也就可以及时检查出前面设计的需求是否可靠了。一个设计良好的方案在运用于系统实现中,是会帮助系统编制人员节省时间,并提升开发效率的。所以在系统的编程阶段,也就是系统实现阶段,对于…...

weixin229学生资助在线管理软件开发微信小程序ssm(文档+源码)_kaic

第5章 系统实现系统实现这个章节的内容主要还是展示系统的功能界面设计效果,在实现系统基本功能,比如修改,比如添加,比如删除等管理功能的同时,也显示出系统各个功能的界面实现效果,该部分内容一方面与前面…...

weixin228基于微信小程序的走失人员的报备平台设计ssm(文档+源码)_kaic

第5章 系统实现系统实现这个章节的内容主要还是展示系统的功能界面设计效果,在实现系统基本功能,比如修改,比如添加,比如删除等管理功能的同时,也显示出系统各个功能的界面实现效果,该部分内容一方面与前面…...

【开题答辩全过程】以 基于springboot的学生竞赛管理系统的设计与实现为例,包含答辩的问题和答案

个人简介一名14年经验的资深毕设内行人,语言擅长Java、php、微信小程序、Python、Golang、安卓Android等开发项目包括大数据、深度学习、网站、小程序、安卓、算法。平常会做一些项目定制化开发、代码讲解、答辩教学、文档编写、也懂一些降重方面的技巧。感谢大家的…...

隧道施工目标检测数据集VOC+YOLO格式3012张19类别

数据集格式:Pascal VOC格式YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件)图片数量(jpg文件个数):3012标注数量(xml文件个数):3012标注数量(txt文件个数):3012标注类别…...

PLL锁相环MATLAB仿真模型:新能源并网相位检测的得力助手

PLL锁相环MATLAB仿真模型。 已调试好,可以直接用。 新能源并网相位检测,控制系统的基础部件。 附理论资料在新能源并网的复杂系统中,相位检测可是极为关键的一环,而PLL锁相环则是这个控制系统的基础部件,如同精密仪器中…...

使用deepAgents框架加载Skills完成网络文档查询功能

1. 背景介绍 本文演示了如何基于 deepagents.create_deep_agent 构建一个支持 Skills 渐进披露机制 的 Agent。目标是: 提出 LangGraph 相关问题(示例:How to define a code evaluator);Agent 从 Skills 列表识别到 la…...

让验证码30秒内只能发送一个

虽然说发邮件不要钱,但是如果没事乱点的话,可能导致我的邮件被标记为垃圾邮箱,所以决定添加一个30秒内只能发送一次的限制,我觉得这个太简单了。30秒以后恢复了界面...

如果 MySQL 中没有 MVCC,会有什么影响?

MySQL 中没有 MVCC 的影响 如果 MySQL 中没有 MVCC,数据库的并发性能和事务隔离能力将受到严重影响。以下是具体影响: 1. 读写冲突严重 有 MVCC 时: 事务A(读) → 读取历史版本 → 不阻塞 事务B(写…...

如何将 Spring Statemachine 作为一个轻量级工作流引擎来使用?

本文将探讨 Spring Statemachine 作为一个轻量级工作流引擎使用的可行性。文章首先介绍 State Machine 的基本概念,然后讲解 Spring Statemachine 的核心特性,最后通过电商订单状态流转的实战案例,演示将 Spring Statemachine 作为工作流引擎…...

数据库从入门到上手:一篇搞定SQL核心操作

还在为数据库的各种操作发愁吗?看完这篇文章,你也能轻松驾驭SQL! 今天咱们来聊聊数据库这个老朋友。不管你是刚入行的程序员,还是正在学习数据分析的同学,数据库操作绝对是你躲不开的必修课。 别担心,跟着…...

【数据库】MySQL的安装与卸载

目录 一、卸载MySQL及清理残余文件 二、下载 MySQL 三、安装与配置 MySQL 一、卸载MySQL及清理残余文件 首先,我们要把之前安装的或者没安装成功的mysql及其相关环境配置清除。第一次安装mysql的,为确保顺利也跟着流程走一遍吧。 **第一步&#xff1…...

YOLO26改进91:全网首发--c3k2模块添加RCB模块

论文介绍 自上而下注意力机制在人类视觉系统中的关键作用 人类视觉系统中,自上而下的注意力机制至关重要。大脑首先获取场景的粗略概览以发现显著线索(即“先概览”),随后进行更精细的局部观察(即“再细看”)。然而,现代卷积神经网络(ConvNets)仍局限于金字塔结构,通…...