百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 热门文章 > 正文

基于改进DeepLabv3+的室外交通场景识别

bigegpt 2024-08-03 11:27 3 浏览

李阳 李猛 王中华

济南大学自动化与电气工程学院

摘 要:针对目前常用语义分割模型对小目标分割不全、精度低等问题,文章提出了一种改进的DeepLabv3+网络。结合结构重参数化思想,在训练阶段将具有多分支卷积结构的DBB模块替代网络中的部分结构,推理阶段再将DBB模块等价转化成单分支结构,从而使网络在具有简单结构的同时拥有复杂多分支网络带来的高分割性能,并且配合使用交叉熵和Dice损失人函数组成混合损失函数训练网络,进一步提高分割的准确性。所提算法在针对室外交通场景的Cityscapes数据集上验证,得到的MIoU(平均交并比)值为76.79%、MPA(平均像素精度)为83.95%,对比原模型分别提高了4.63%和3.53%。经实验证明,文章所提出的方法可以有效地改善分割精度,从而达到更好的分割效果。

关键词:图像语义分割;DeepLabv3+;结构重参数化;DBB模块;混合损失函数;

作者简介:李阳(1997—),男,硕士研究生,研究方向:计算机视觉。;

0 引言

随着人工智能时代的到来,智慧无人驾驶技术能够帮助我们释放双手、摆脱乏味,已然成了不可阻挡的时代潮流,而对交通道路场景的识别能力作为智能驾驶的基础与前提条件,其效果的可靠性、有效性起着举足轻重的作用。

基于深度学习的卷积神经网络(CNN)的应用使得计算机视觉得到了快速发展,其在交通道路场景识别中有着出色的表现。Pan Xingang等人认为卷积网络在利用图像中跨行列之间信息的能力不足,影响了车道线、路灯等目标的分割效果,基于此提出了SCNN网络,解决了传递特征图上的空间关系,在公开数据集上表现优秀[1]。针对交通场景中车辆行人等相互遮挡的情况,李轩等人提出了一种遮挡的回归损失函数Occlusion loss,搭配目标检测算法YOLO v3不仅可以提高目标检测的精度,还能够避免同一检测框内出现多个被检测目标,从而有效防止漏检,并且拥有更强的鲁棒性[2]。谭睿俊等人针对语义分割网络在提取特征时下采样池化操作会损害特征图分辨率的情况,为提升其在交通场景下的分割效果,构建了一种双层残差网络和跳跃特征融合网络相结合的语义分割模型,更加全面充分地学习图像特征,使网络达到了较高的提取特征能力和识别效果[3]。

作为当前图像语义分割领域中主流的具有编码-解码结构的网络模型,Deep Labv3+网络中引入了扩张卷积,可以获取更多的上下文信息,表现十分出色[4]。然而,在面对交通场景中一些小目标物体的分割时,分割效果不明显,且总体分割精度有待提高。针对上述问题,该文将基于Deep Labv3+网络进行改进,提升其精度及分割效果。

1 算法改进及相关内容介绍

1.1 总体框架

该文改进的Deep Labv3+的图像语义分割算法,主要是利用了结构重参数化方法和混合损失函数实现的。采用结构重参数化方法,用具有多分支结构的DBB模块重构模型中解码部分的网络结构[5]。在交叉熵作为损失函数的基础上,结合Dice损失函数组成混合损失函数,引导网络训练学习,弥补单个损失函数在数据出现不均衡时的不足问题,进一步提升网络的分割精度。

1.2 结构重参数化

多分支的结构相当于使网络增加了不同尺度的感受野,相较于单层递进式的网络结构拓宽了网络的宽度、增加了学习参数,有利于网络性能的提高,但网络的多分支化会不可避免地带来网络在使用时的大参数量以及内存消耗。2021年,Diverse Branch Block(DBB)模块被提出,图1为DBB模块示意图。其核心理念是通过多分支网络结构(包含卷积序列、多尺度卷积及平均池化)来丰富卷积块的特征空间,从而增强了单卷积的表示能力,为卷积神经网络带来更大的改善。通过结构重参数化思想,DBB模块还可以将复杂得多的分支结构等价转化为一个单分支结构,如此可以使得转化后的网络不仅拥有了在转换前的优良性能,而且结构简单。

要将复杂多分支结构转化为一个单分支结构,其融合过程需要涉及多个步骤,包括将BN层与卷积层的融合、不同尺寸的卷积融合等。

首先是BN层和卷积层的融合。已知卷积变化、BN操作分别如公式(1)(2):

图1 Diverse Branch Block(DBB)示意图 下载原图

则输入x经过卷积层和BN层的过程可以表示为:

式中,γ和β——BN层自身训练学习到的比例因子和偏置项;μB和σB——均值和方差。令

由(3)(4)可得:

式中,

——经融合后的卷积核的权重与偏置。经过以上变换,就实现了将卷积层和BN层融合为一个单一卷积块的过程。

对于分支融合。由文献[6]可知,两个或多个配置相同的卷积是具有可加性,即可以先将不同的分支都转化为相同配置的卷积,再把它们利用可加性合并为一个卷积,这就是分支融合的原理。

如图1(a)所示,第(1)条支路中1×1卷积和BN层进行融合后,使用0进行填充至K×K大小;第(2)条支路中结构为1×1Conv-BN-K×K Conv-BN,先分别将1×1卷积与对应的BN层以及K×K卷积与对应的BN层进行融合,得到的结构为1×1Conv-K×K Conv。其次以F1∈RD×C×1×1作为1×1 Conv的卷积核、F2∈RE×D×K×K作为K×K Conv的卷积核,它们的偏置分别为b1∈RD和b2∈RE。则输出O'是:

式中,I——输入,*——卷积运算。由于我们需要得到

由文献[7]可知,可以用转置后的1F对2F进行卷积得到F'、1b与2F相乘后与2b相加得到b',注意,对于需要进行0填充的K×K Conv,方法是在模型训练时对第一个BN后的结果填充1b,至此将第(2)条支路转化成K×K大小的卷积。第(3)条支路中先将平均池化层等价转化为同样大小和步长的卷积,之后按照第(2)条支路的处理对该条支路转换为K×K大小的卷积;第(4)条支路中K×K卷积只和BN层融合。最后将转化后的四条支路进行分支融合,得到图1(b)所示的单一结构卷积块。

1.3 Dice Loss

在网络训练阶段,该文提出了一种混合损失函数,即将交叉熵损失与Dice损失相结合。Dice Loss[8]可以有效地应对数据中正负样本不平衡造成的分割效果不理想的场景,其计算公式如式(8)所示:

式中,ip——预测图中的像素点;gi——标签图中的像素点;pi gi——二者交集。由式(8)中可以看到Dice Loss表示一种区域性代价函数,也就是说影响某像素点的训练损失及梯度值的原因不仅和该点的预测值及对应标签值有关,其他点的预测值及相应标签值也会做出干扰,即网络的所有输出都会影响该像素的梯度,这就避免了模型在背景像素数目大于目标像素数目的情况下严重偏向于背景而导致模型分割效果不好的情况,因此图像中的数据不均衡问题可以得到缓解。

2 实验与分析

2.1 实验环境及训练方法

该文的实验环境为深度学习框架为Pytorch1.10,处理器是Intel i9-10980XE,GPU为NVIDIA Ge Force RTX3080。该文使用迁移学习策略,将预训练模型Resnet101网络作为算法的初始化权重主干特征提取网络,以提升网络的泛化能力。训练分为两个阶段。阶段一为冻结主干特征提取网络阶段,学习率为0.007,批处理大小和epoch分别为8和50。阶段二是解冻主干网络阶段,学习率为0.000 07,批处理大小和epoch分别为4和50。采用SGD作为优化器,学习率衰减策略为余弦退火。

训练时,在网络解码结构用DBB模块替换部分卷积去训练,并且配合混合损失函数计算梯度信息进行反向传播训练网络模型。推理测试阶段利用结构重参数化方法,将DBB模块构转化成简单卷积。

2.2 实验数据集及评价指标

该文采用Cityscapes数据集[9]对所提算法进行试验和验证,由于官方并没有给出测试集对应的标签图,所以该文使用的数据集是训练集加验证集共3 475图片,并随机划分,取3 175张图片用于训练、348张图片用于验证及后续的测试。该文选择使用平均交并比(MIo U)和平均像素精度(MPA)为验证图像语义分割算法性能的评价指标。

2.3 实验结果与分析

该文对所改进算法进行了消融实验,模型语义分割结果如表1所示。

表1 各模型的图像语义分割结果评估 下载原图

从表1中的结果对比可以看出,在原算法的基础上,仅在特征提取阶段利用DBB模块替换卷积结构或仅加入混合损失函数,都使得MIo U和MPA得到了有效提高;而在原有基础上同时DBB模块和混合损失函数,使得MIo U值提高了4.63个百分点、MPA提高了3.53个百分点。

使用模型(1)和(4)对Cityscapes数据集中的测试集进行语义分割,实验对比结果如图2所示。可以看出,在交通场景下进行场景识别时,原Deep Labv3+算法在分割成像占比较小的柱子、人等物体时明显存在分割不均衡、遗漏的现象,该文所改进的算法的分割效果更为明显。实验结果表明,所改进算法对于目标背景的边界分割能力有明显提升,细化目标边界,轮廓更加清晰,改善了数据不平衡分割不好的问题,并改善了语义分割效果。

图2 分割结果对比图 下载原图

3 结论

针对交通场景下语义分割性能精度低以及对小目标物体分割效果较差的问题,该文提出了一种改进的Deep Labv3+网络的语义分割方法,首先利用结构重参数化方法,在训练阶段用DBB模块重构网络的解码架构,推理阶段再等价转化成一个简单卷积块,使模型在具有复杂多分支结构表现出来的良好分割性能的同时兼具单分支结构的简洁特征;其次,使用Dice损失函数和交叉熵损失函数结合的混合损失函数应用到算法中,可以有效地改善出现正负样本不平衡时分割效果不理想的情况。通过使用Cityscapes数据集进行的消融实验表明,所提算法相比原Deep Labv3+算法对图像的分割准确度有了很大的提升,拥有更好的效果。

参考文献

[1] Pan X, Shi J, Luo P, et al. Spatial as deep:Spatial cnn for traffic scene understanding[C].Proceedings of the AAAI Conference on Artificial Intelligence,2018.

[2] 李轩,李静,王海燕.密集交通场景的目标检测算法研究[J].计算机技术与发展,2020(7):46-50.

[3] 谭睿俊,赵志诚,谢双林.双层残差语义分割网络及交通场景应用[J].智能系统学报, 2022(4):780-787.

[4] Chen L C, Zhu Y, Papandreou G, et al. Encoder-decoder with atrous separable convolution for semantic image segmentation[C].Proceedings of the European conference on computer vision(ECCV),2018:801-818.

[5] Ding X, Zhang X, Han J, et al. Diverse branch block:Building a convolution as an inception-like unit[C].Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition,2021:10886-10895.

[6] Ding X, Guo Y, Ding G, et al. Acnet:Strengthening the kernel skeletons for powerful cnn via asymmetric convolution blocks[C].Proceedings of the IEEE/CVF international conference on computer vision,2019:1911-1920.

[7] Tian Z, He T, Shen C, et al. Decoders matter for semantic segmentation:Data-dependent decoding enables flexible feature aggregation[C].Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition,2019:3126-3135.

[8] Milletari F, Navab N, Ahmadi S A. V-net:Fully convolutional neural networks for volumetric medical image segmentation[C].2016 fourth international conference on 3D vision(3DV). Ieee, 2016:565-571.

[9] Cordts M, Omran M, Ramos S, et al. The cityscapes dataset for semantic urban scene understanding[C].Proceed of the IEEE conference on computer vision and pattern recognition,2016:3213-3223.

声明:我们尊重原创,也注重分享。有部分内容来自互联网,版权归原作者所有,仅供学习参考之用,禁止用于商业用途,如无意中侵犯了哪个媒体、公司、企业或个人等的知识产权,请联系删除(邮箱:glyhzx@126.com),另本头条号推送内容仅代表作者观点,与头条号运营方无关,内容真伪请读者自行鉴别,本头条号不承担任何责任。

相关推荐

得物可观测平台架构升级:基于GreptimeDB的全新监控体系实践

一、摘要在前端可观测分析场景中,需要实时观测并处理多地、多环境的运行情况,以保障Web应用和移动端的可用性与性能。传统方案往往依赖代理Agent→消息队列→流计算引擎→OLAP存储...

warm-flow新春版:网关直连和流程图重构

本期主要解决了网关直连和流程图重构,可以自此之后可支持各种复杂的网关混合、多网关直连使用。-新增Ruoyi-Vue-Plus优秀开源集成案例更新日志[feat]导入、导出和保存等新增json格式支持...

扣子空间体验报告

在数字化时代,智能工具的应用正不断拓展到我们工作和生活的各个角落。从任务规划到项目执行,再到任务管理,作者深入探讨了这款工具在不同场景下的表现和潜力。通过具体的应用实例,文章展示了扣子空间如何帮助用户...

spider-flow:开源的可视化方式定义爬虫方案

spider-flow简介spider-flow是一个爬虫平台,以可视化推拽方式定义爬取流程,无需代码即可实现一个爬虫服务。spider-flow特性支持css选择器、正则提取支持JSON/XML格式...

solon-flow 你好世界!

solon-flow是一个基础级的流处理引擎(可用于业务规则、决策处理、计算编排、流程审批等......)。提供有“开放式”驱动定制支持,像jdbc有mysql或pgsql等驱动,可...

新一代开源爬虫平台:SpiderFlow

SpiderFlow:新一代爬虫平台,以图形化方式定义爬虫流程,不写代码即可完成爬虫。-精选真开源,释放新价值。概览Spider-Flow是一个开源的、面向所有用户的Web端爬虫构建平台,它使用Ja...

通过 SQL 训练机器学习模型的引擎

关注薪资待遇的同学应该知道,机器学习相关的岗位工资普遍偏高啊。同时随着各种通用机器学习框架的出现,机器学习的门槛也在逐渐降低,训练一个简单的机器学习模型变得不那么难。但是不得不承认对于一些数据相关的工...

鼠须管输入法rime for Mac

鼠须管输入法forMac是一款十分新颖的跨平台输入法软件,全名是中州韵输入法引擎,鼠须管输入法mac版不仅仅是一个输入法,而是一个输入法算法框架。Rime的基础架构十分精良,一套算法支持了拼音、...

Go语言 1.20 版本正式发布:新版详细介绍

Go1.20简介最新的Go版本1.20在Go1.19发布六个月后发布。它的大部分更改都在工具链、运行时和库的实现中。一如既往,该版本保持了Go1的兼容性承诺。我们期望几乎所...

iOS 10平台SpriteKit新特性之Tile Maps(上)

简介苹果公司在WWDC2016大会上向人们展示了一大批新的好东西。其中之一就是SpriteKitTileEditor。这款工具易于上手,而且看起来速度特别快。在本教程中,你将了解关于TileE...

程序员简历例句—范例Java、Python、C++模板

个人简介通用简介:有良好的代码风格,通过添加注释提高代码可读性,注重代码质量,研读过XXX,XXX等多个开源项目源码从而学习增强代码的健壮性与扩展性。具备良好的代码编程习惯及文档编写能力,参与多个高...

Telerik UI for iOS Q3 2015正式发布

近日,TelerikUIforiOS正式发布了Q32015。新版本新增对XCode7、Swift2.0和iOS9的支持,同时还新增了对数轴、不连续的日期时间轴等;改进TKDataPoin...

ios使用ijkplayer+nginx进行视频直播

上两节,我们讲到使用nginx和ngixn的rtmp模块搭建直播的服务器,接着我们讲解了在Android使用ijkplayer来作为我们的视频直播播放器,整个过程中,需要注意的就是ijlplayer编...

IOS技术分享|iOS快速生成开发文档(一)

前言对于开发人员而言,文档的作用不言而喻。文档不仅可以提高软件开发效率,还能便于以后的软件开发、使用和维护。本文主要讲述Objective-C快速生成开发文档工具appledoc。简介apple...

macOS下配置VS Code C++开发环境

本文介绍在苹果macOS操作系统下,配置VisualStudioCode的C/C++开发环境的过程,本环境使用Clang/LLVM编译器和调试器。一、前置条件本文默认前置条件是,您的开发设备已...