基于特征融合的无人驾驶多任务感知算法

2023-04-29 10:02孙传龙赵红崔翔宇牟亮徐福良路来伟
复杂系统与复杂性科学 2023年3期
关键词:特征融合多任务无人驾驶

孙传龙 赵红 崔翔宇 牟亮 徐福良 路来伟

摘要: 为提高无人驾驶汽车感知系统硬件资源利用率,构建了一种基于特征融合的无人驾驶多任务感知算法。采用改进的CSPDarknet53作为模型的主干网络,通过构建特征融合网络与特征融合模块对多尺度特征进行提取与融合,并以7种常见道路物体的检测与可行驶区域的像素级分割两任务为例,设计多任务模型DaSNet(Detection and Segmentation Net)进行训练与测试。使用BDD100K数据集对YOLOv5s、Faster R-CNN以及U-Net模型进行训练,并对mAP、Dice系数以及检测速度等性能指标做出对比分析。研究结果表明:DaSNet多任务模型在道路物体检测任务上,mAP值分别比YOLOv5s和Faster RCNN高出0.5%和4.2%,在RTX2080Ti GPU上达到121FPS的检测速度;在占优先权与不占优先权的可行驶区域上分割的Dice值相较于U-Net网络分别高出了4.4%与6.8%,有较明显的提升。

关键词: 无人驾驶;多任务;特征融合;道路物体检测;可行驶区域分割

中图分类号: TP391文献标识码: A

Multi-task Sensing Algorithm for Driverless Vehicle Based on Feature Fusion

SUN Chuanlong1,ZHAO Hong1,CUI Xiangyu2,MU Liang1,XU Fuliang1,LU Laiwei1

Abstract:In order to improve the utilization of hardware resources of driverless vehicle perception system, a multi-task driverless vehicle perception algorithm based on feature fusion is constructed. The improved CSPDarknet53 is used as the backbone network of the model, and multi-scale features are extracted and fused by constructing feature fusion network and feature fusion module. The detection of 7 common road objects and pixel-level segmentation of the driving area are taken as examples. Multi-task DaSNet (Detection and Segmentation Net) is designed for training and testing. In order to compare model performance, BDD100K data set is used to train YOLOv5s, Faster R-CNN and U-NET models, and comparative analysis is made on mAP, Dice coefficient and detection speed and other performance indicators. The results showed that DaSNet multi-task model′s mAP value is 0.5% and 4.2% higher than YOLOv5s and Faster RCNN, respectively, and the detection speed of 121FPS can be achieved on RTX2080Ti GPU. Compared with U-NET network, Dice value of segmentation in priority and non-priority drivable are 4.4% and 6.8% higher, showing an obvious improvement.

Key words: driverless vehicle; multi-task; fature fusion; road object dection;driveable area segmentation

0 引言

目前,无人驾驶已经成为众多国家的发展战略之一,其中,感知系统[1-3]作为无人驾驶汽车中不可或缺的部分之一,对环境的感知適应性、实时性直接影响了无人驾驶汽车的安全性和可靠性,而目标检测、语义分割作为感知系统中的两大任务,其效果将直接影响无人驾驶汽车决策系统的决策质量。

近年来,深度学习[4]在目标检测、语义分割领域的应用取得了重大的突破,这很大程度上归功于大型数据集、计算机强大的计算能力、复杂的网络架构和优化算法的进展。在目标检测领域,两阶段算法与单阶段算法是目前两大类基于深度学习的目标检测算法,其中两阶段算法主要有R-CNN[5],其改进后的Fast R-CNN[6]以及Faster R-CNN[7],这类算法需要先从图像中选取候选框,再对候选框进行分类与回归,虽准确率较高,但繁琐的检测步骤容易导致出现检测速度较低,实时性较差等问题。以YOLO[8]为代表的单阶段算法具有端到端的网络结构,具有较高的检测速度,同时,由于巧妙的网络设计方式使其具备令人满意的检测准确率。在图像语义分割领域,基于区域分类的图像语义分割和基于像素分类的图像语义分割是目前主流的基于深度学习的语义分割方法,前者先将图像划分为一系列目标候选区域,通过深度学习算法对目标区域进行分类,避免了超像素的生成,有效提高了图像分割效率,其代表有MPA[9]、DeepMask[10]等;后者则是以像素分类的方式直接利用端到端结构的深层神经网络进行分割,避免了生成候选区域算法缺陷带来的问题,其代表有DeepLab[11]、ICNet[12]、U-Net[13]等。

以上算法虽然都在对应的感知系统各项任务中取得了较好的效果,但“一项任务对应一种算法模型”的方式,忽略了感知系统各项任务特征之间的联系,这不仅加剧了感知系统的计算负担,而且降低了无人驾驶汽车中有限硬件资源的利用率。本文针对这一问题,通过整合感知系统各项任务特征之间的联系与各项任务的算法结构特点,提出了一种基于特征融合[14]的端到端的多任务算法模型DaSNet(Detection and Segmentation Net),挖掘多任务之间的信息,通过算法自学习来优化各项任务损失的权重,得到最佳权重配比,且构建了可行驶区域分割与道路目标检测的多任务轻量化网络,在提高了无人驾驶道路环境感知系统中硬件资源的利用率的同時提升了检测与分割任务的精度。

1 DaSNet算法结构

DaSNet整体算法结构如图1所示,该模型由主干网络、特征融合网络、道路物体检测层以及可行驶区域分割网络四部分组成。

输入数字图像经过特定的预处理操作后输入到主干网络,提取不同抽象等级的特征,并将得到的不同的尺度特征图输入到特征融合网络中,在特征融合网络中经过多次上采样与卷积操作,与其它特征图融合以增强特征表达能力,最终输出融合后3种尺度的特征图;道路物体检测层分别在3个特征图上进行检测并输出车辆、行人以及路标等道路物体的预测信息。同时,可行驶区域分割网络将来自主干网络的可行驶区域的通用语义特征,即待预测图像中的浅层语义信息和图像内容信息,与来自特征融合网络的特征包含车辆行人等可能阻碍汽车前进的物体的类别与位置信息通过Fusion融合模块进行自底向上的特征融合,恢复图像细节与分辨率,实现对图像中可行驶区域的像素级预测,进而达到在一个模型上同时完成两类任务的效果,其网络的构建为本文的重点。

1.1 主干网络

主干网络作为整个模型的前置部分,负责提取图像中的信息,生成特征图,供后置功能网络使用。本文改进了CSPDarknet53作为模型的主干网络,主要由改进的Focus层,卷积块CBL(Conv+Batchnorm+Leaky ReLU),残差单元(ResUnit),跨阶段局部单元CSP(Cross Stage Partial)和空间金字塔池化层SPP(Spatial Pyramid Pooling)组成,其结构如图2所示。为更好地保留输入图像原始信息,在DaSNet模型中对YOLOv5s中的Focus层做了结构上的改进,即在原来的结构基础上增加一条通路,直接将输入图像进行卷积,再将两条通路进行拼接后,经过一次卷积,即可得到改进的Focus层的输出。这种结构能在YOLOv5s中Focus层优势的基础上,更多地保留原始图像信息,并且将两条通路结合,丰富输入图像信息,使后续卷积层可以获得更好的特征提取效果。

DaSNet模型中全部采用Leaky ReLU作为激活函数对卷积层得到的运算结果进行非线性激活,如图3所示,传统的ReLU激活函数虽然具有较快的计算速度与收敛速度,但当输入为负值时,会因为其0输出导致神经元无法更新参数;而Leaky ReLU函数相较于传统的ReLU函数在输入的负半区间引入了Leaky值,避免了输入为负值时0导数的出现导致神经元无法更新参数的问题。

1.2 特征融合网络

原始图像中一些小尺寸目标本身具有的像素较少,最后一层特征图在经过多次卷积与下采样操作后,很可能将小尺寸目标对应的像素和信息丢失,因此,若仅使用主干网络最后一层输出特征来进行目标的预测,则会导致漏检;且在主干网络中,靠前的浅层卷积层更容易提取到抽象级别较低的图像内容信息,而较深卷积层更容易提取到抽象等级较高的特征信息,若只对主干网络最后一层的特征图进行检测,容易漏掉许多原始图像的内容信息,从而导致检测结果不理想。因此在主干网络后,加入特征融合网络,从主干网络中提取多个尺度的特征并进行融合,进而使用融合后含有丰富信息的特征进行检测,使检测性能得到大幅提升。

类比PAN[15](Path Aggregation Network)特征融合网络,采用CSP2-1模块作为基本单元构成如图4所示的特征融合网络结构。这种使用CPS2-1模块改进的PAN结构多了一轮自低而上的融合步骤,提高了模型的特征表达能力,使融合后的特征含有更丰富的语义信息,从而进一步提升检测效果。

1.3 道路物体检测网络

道路物体检测网络来自特征融合网络输出的3个特征,分别对其进行卷积操作,将3个输出张量作为预测结果,网络结构如图5所示。

DaSNet模型中先验框初始值设置为横向矩形,方形与纵向矩形3种,在道路感知场景中,这3种先验框的配置可以很好地适应车辆,路标以及行人等目标的预测。随着网络的训练,模型会根据数据集标签框的数值分布,自适应地对先验框大小做出调整。

1.4 可行驶区域分割网络

可行驶区域分割网络作为DaSNet模型的第22分支,负责对道路前方可以行驶的区域进行像素级分割,其网络结构如图6所示。

目前大多算法使用单独的分割网络对区域进行预测,不但会消耗大量的算力,且由于路面区域语义特征不明显,导致分割准确率较差。而DaSNet中的可行使区域分割网络的输入分别来主干网络以及特征融合网络。来自主干网络的特征包含待预测图像中的浅层语义信息以及图像内容信息,能提供可行驶区域的通用语义特征;来自特征融合网络的特征包含车辆行人等可能阻碍汽车前进的物体的类别与位置信息;输入特征在经过上采样后,经过融合模块Fusion与尺寸大一倍的输入特征进行融合。并在每两次Fusion操作后使用CSP模块进行特征增强,最后使用一个卷积层得到分割结果,其两通道分别表示对应像素为占优先权的可行驶区域与不占优先权的不可行驶区域的概率,若预测值小于阈值则认为该像素点为不可行驶区域,其中阈值的选取与检测分支的阈值选取同理。

可行使区域分割网络融合模块Fusion将两个输入特征按通道方向拼接后进行两次CBL模块运算,并使用上采样层恢复特征图像细节与分辨率,作为下一个Fusion模块的输入特征。

将区域分割的任务融合到道路物体检测网络中,作为一个附加的分支,达到在一个模型上同时完成两类任务的效果,由于共用主干网络以及特征融合网络的特征,分割网络可以获取到模型已提取到的道路物体语义信息,由于道路前方的汽车与行人等障碍物会使可行驶区域发生改变,因此利用这些道路物体语义特征对可行驶区域进行预测,在减少算力的同时,也可以使分割效果明显提升。

2 损失函数与数据集

2.1 损失函数设计

IoU(Intersection over Union)為交并比,是目前检测中比较常用的指标,可以反映出预测检测框与真实检测框的检测效果,计算公式为

式(4)中,confLoss为单个预测框的置信度损失,yconfi为该预测框的置信度预测值,当检测目标预测框的网格处有标记物体时tconfi为1,否则为0;式(5)中clsLoss为分类概率损失,当标记物体的类别为i时,tclsi为1,否则为0,yclsi为模型输出预测框类别为i的概率。

在训练分割网络时,选择合适的损失函数,也能使网络得到更准确光滑的分割效果。本文选用一种由度量集合相似度的度量函数演化而来的DiceLoss,其计算公式为

(6)

其中,X和Y分别为标签像素与预测像素,反映了区域与标签像素区域的重合关系。Dice损失更注重于优化预测区域与标签区域的重合关系,更适合于DaSNet模型的可行驶区域分割任务,因此在训练可行驶区域分割网络时选择DiceLoss作为损失函数。

2.2 BDD100K网络数据集

本文采用2018年5月伯克利大学AI实验室发布的BDD100K数据集,其中包含10万个高清视频序列,总时长超过1 100 h,涵盖不同时间、不同天气条件和驾驶场景。每个视频对第10秒进行关键帧采样,得到10万张尺寸为1 280*720的图片,并对道路物体、可行驶区域、车道线和全帧实例分割进行标注,这些标记能使模型更好地理解不同场景中数据和对象的多样性。

如图7所示,在BDD100K数据集中,8用于目标检测的有公共汽车、交通灯、交通标志、人、自行车、卡车、摩托车、汽车、火车和乘车人等共上百万个目标物体的标注数据;且有超过10万张相关图像含有用于语义分割与实例分割的像素级注释和丰富实例级注释;也有超过10万张图片的多种车道线标注可用于车道线的检测。

3 实验验证及结果分析

本文使用的模型训练环境均为高性能的桌面台式机,选用微星Z390主板、搭载Intel i9 9900KF处理器以及32GB运行内存,采用11G显存的Nvidia Geforce RTX2080Ti GPU进行模型的训练与测试;软件方面,系统选用Ubuntu20.04版本,集成开发工具选用PyCharm 2020版本并结合Anaconda包管理器创建conda虚拟环境,使用Python3.7环境下的Pytorch10.1版本进行算法模型的开发与测试。

3.1 检测主分支训练

在道路物体检测分支网络训练过程中,对主干网络、特征融合网络以及检测层做前向传播,根据标签数据求出分类损失、置信度损失以及检测框损失,在反向传播后,使用随机梯度下降算法更新主干网络、特征融合网络以及检测层的网络权重参数。在整个训练过程中,采用大小为16的batch size,并设置初始学习率为0.1,设置如图8所示的学习率调整策略,在7万张图像的训练集上进行300次迭代,由于Mosaic数据增强方法每次融合4张图片,且网络使用了较高性能的预训练权重,因此300次迭代足够使模型达到收敛后较平稳的区域。在网络刚开始训练的阶段,由于部分权重参数是随机初始化生成的,如果使用较高的学习率会使训练过程非常不稳定,所以采用warm up的方式在训练前4次迭代中将学习率逐渐增加到初始学习率0.01;在网络训练后期,权重在最优值附近,一直使用较高学习率会使权重每次都有较大变换,导致损失值在最小值左右来回震荡,使用余弦退火的学习率衰减策略,使学习率在训练过程中不断下降,从而使损失值收敛于最优点。

模型训练过程中在验证集上的损失值迭代曲线如图9所示,最上方为分类损失,中间为GIoU损失,下方为置信度损失。可以看出,在训练开始阶段,3种损失值较大,随着学习率增加为初始值,损失值开始较快下降,随着训练迭代次数的增加,由于调整策略的调整学习率缓慢下降,损失值的下降逐渐趋于平稳,在240次迭代中损失值到达最优值,将此时的网络权重保存作为最终训练结果,并对其性能做出评价。

3.2 分割分支训练

由于可行驶区域分割网络以道路物体检测网络的特征层作为输入,因此分割网络的训练必须在道路物体检测网络训练之后进行,训练时对主干网络,特征融合网络以及分割网络做前向传播,网络输出与输入图像尺寸相同的掩膜,掩膜与标记掩膜求Dice损失,并反向传播,在更新网络权重时,将主干网络与特征融合网络的参数固定,只对可行驶区域分割网络进行权重参数的更新。

分割网络分支无预训练的权重,因此将训练的迭代次数增加到600次,与检测网络采用相同学习率衰减策略与0.1的初始学习率,batch size同样设置为16。网络训练过程的损失值迭代曲线如图10所示。可以看出,由于主干网络在检测分支的训练过程中预先学习到了图像的通用特征,因此分割网络损失值有着较低的初始值,且在训练过程中随着学习率的调整不断波动,在最后100次迭代中收敛于最优值。

3.3 模型预测效果展示

在预测过程中,图片经过自适应填充缩放后,输入到加载了训练过的权重的模型中进行前向传播并得到预测结果,将其解码后经过非极大值抑制算法过滤掉多余检测框,并将检测结果恢复到原始图像的尺度,使用openCV库在原始图像上进行结果绘制,即可得到如图11所示的预测效果图。

從图11可以看出,DaSNet模型对距离较近的行人、汽车以及路标等有着非常精确的检测效果,且置信度较高;对远处较小的汽车与行人目标也有着较高的检测率。分割网络也能够较准确地识别出前方可行驶的道路区域,并且能明显地区分出前方占优先权的车道与不占有优先权的车道。

3.4 道路物体检测网络对比分析

召回率与准确率是目标检测领域常见的两个指标,召回率代表模型在所有待预测目标中的已检测数量,而准确率则代表模型预测正确数量。两个指标通常呈负相关的关系,因此经常通过综合评价召回率与准确率的方法来评价模型性能,计算公式为

对某一分类,从0.5到0.95中每隔0.05取一个值作为预测框的IoU阈值,并在所有取到的阈值下计算其召回率与准确率,并作为横坐标与纵坐标绘制P-R曲线,曲线下的面积即为当前分类的AP值。mAP值即为所有分类AP值的平均值。其计算公式为

其中,c为当前分类的编号,n为总类别数,precision(recall)为当前召回率下准确率的值。mAP值为模型检测的精度,而检测速度是除mAP之外另一个重要的评价指标,通常使用FPS(Frames per second)为单位,表示模型在一秒钟内能完成检测的图像数量。根据上述评价指标,使用BDD100K数据集中1万张验证集进行推理测试,绘制其在验证集上的P-R曲线,并计算mAP、mAP50以及推理速度,结果如图12所示。

可以看到,模型对于不同类别有着不同的P-R曲线,其中深黑色曲线为根据验证集中所有类别的所有目标求得的P-R曲线,利用该曲线可以求出模型的mAP值为33.7%;记录模型对整个验证集的推理时间,利用验证集数量求得模型的推理速度为121FPS。

为更好地评估DaSNet检测分支的性能,分别选用目标检测领域单阶段与两阶段两类算法中性能最优的算法进行对比实验,分别使用搭载了CSPDarknet53主干网络与FPN特征融合网络的YOLOv5s(YOLOv5s与DaSNet模型量级相近)模型与搭载了VGG16的Faster R-CNN模型在BDD100K训练集上进行300次迭代,并计算相关指标,分别记录其mAP值、mAP50值以及检测速度,结果如表1所示。可见,DaSNet模型的道路物体检测网络比YOLOv5s模型速度稍慢,但提升了0.5%的mAP与1.1%的mAP50;且在检测速度远高于Faster R-CNN模型的同时,比其高了4.2%的mAP与7.4%的mAP50。因此DaSNet模型相较于当前主流的目标检测算法有了一定的提升。

3.5 可行驶区域分割网络对比分析

与损失函数保持一致,使用Dice系数对可行驶区域分割网络性能做出评估,其计算公式为

其中,X为数据集的标记掩膜,Y为模型预测掩膜,该系数很好地反映了标签掩膜与预测掩膜的重合关系,从而评估模型性能。

使用BDD100K训练集在U-Net网络上进行600次迭代,并在验证集上对训练后的U-Net模型进行测试,计算其对占优先权与不占优先权两种可行驶区域的Dice系数,并与DaSNet模型的道路物体检测网络对比,两种模型预测效果如图13所示。

由图13可以看出,相较于U-Net,本文设计的DaSNet模型在可行驶区域边缘部分的分割效果更加平滑,且对于车辆与行人周围的区域,能更加精细地将可行驶区域分割出来,这说明加入的来自道路物体检测网络的输入特征层确实能影响可行驶区域的分割效果。

由表2可以看出,DaSNet模型在BDD100K数据集的可行驶区域分割效果上,相较于U-Net有着较大的提升,说明融合道路物体语义信息的可行驶区域分割方法在无人驾驶场景感知中有更好的效果;也说明了基于多任务间特征融合的模型设计方法的有效性。

4 结论

经验证,DaSNet对常见的7种道路物体有较高的检测精度,在夜晚等复杂环境中几乎没有误检漏检,具有较好的鲁棒性,且能有效地对前方道路的可行驶区域进行像素级分割,其轻量级的网络结构模型也带来了可靠的实时性。通过对比实验可知,DaSNet相较于当前主流的单一任务的预测模型有着更好的表现效果。这说明本文提出的利用多任务特征共享的模型设计方法确实能有效改善模型的性能,在提高了无人驾驶道路环境感知系统中硬件资源利用率的同时提升了检测与分割任务的精度,为提高感知系统的运行效率起到积极作用。

参考文献:

[1]王俊. 无人驾驶车辆环境感知系统关键技术研究[D]. 合肥:中国科学技术大学, 2016.

WANG J. Research on keytechnologies of environment awareness system for unmanned vehicle [D]. Hefei: University of Science and Technology of China, 2016.

[2]王世峰, 戴祥, 徐宁, 等. 无人驾驶汽车环境感知技术综述[J]. 长春理工大学学报(自然科学版), 2017,40(1): 1-6.

WANG S F, DAI X, XU N, et al. Overview on environment perception technology for unmanned ground vehicle[J]. Journal of Changchun University of Science and Technology (Natural Science Edition), 2017,40(1): 1-6.

[3]CHEN Q, XIE Y, GUO S, et al. Sensingsystem of environmental perception technologies for driverless vehicle: a review of state of the art and challenges[J]. Sensors and Actuators A Physical, 2021, 319: 112566.

[4]GAYATHRIK D, MAMATA R, NGUYEN T D L. Artificial intelligence trends for data analytics using machine learning and deep learning approaches[M]. USA: Calabasas: CRC Press, 2020.

[5]GIRSHICK R, DONAHUE J, DARRELL T, et al. Rich feature hierarchies for accurate object detection and semantic segmentation[C]//IEEE Conference on Computer Vision and Pattern Recognition. Columbus: IEEE, 2014: 580-587.

[6]GIRSHICK R. Fast r-cnn [C]// IEEE International Conference on Computer Vision. Santiago: IEEE, 2015: 1440-1448.

[7]REN S, HE K, GIRSHICK R, et al. Faster R-CNN:towards real-time object detection with region proposal networks[J]. IEEE Transactions on Pattern Analysis & Machine Intelligence, 2017, 39(6): 1137-1149.

[8]REDMON J, DIVVALA S, GIRSHICK R, et al. You only look once:unified, real-time object detection[C]// IEEE conference on Computer Vision and Pattern Recognition. Las Vegas: IEEE, 2016: 779-788.

[9]LIU S, QI X, SHI J, et al. Multi-scalepatch aggregation (MPA) for simultaneous detection and segmentation[C]// 2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR). Seattle :IEEE, 2016: 3141-3149.

[10] PINHEIRO P, COLLOBERT R, DOLLAR P. Learning tosegments objects candidates[C]// Advances in Neural Information Processing Systems. Montreal:NIPS,2015.

[11] CHEN L C, PAPANDREOU G, KOKKINOS I, et al. Semanticimage segmentation with deep convolutional nets and fully connected CRFs[J]. Computer Science, 2014(4): 357-361.

[12] ZHAO H SH, QI X J, SHEN X Y, et al. ICNet forreal-time semantic segmentation on high-resolution images[J]. Lecture Notes in Computer Science, 2017, 11207: 418-434.

[13] RONNEBERGER O, FISCHER P, BROX T. U-net: convolutional networks for biomedical image segmentation[J]. Lecture Notes in Computer Science, 2015, 9351: 234-241.

[14] 李亚. 多任务学习的研究[D].合肥:中国科学技术大学, 2018.

LI Y. Research on multi-task learning [D]. Hefei: University of Science and Technology of China, 2018.

[15] LIU S H, QI L, QIN H F, et al. Path aggregation network for instance segmentation[J/OL]. IEEE.[2021-10-01]. DOI:10.1109/CVPR.2018.00913.

[16] REZATOFIGHI H, TSOI N, J Y GWAK, et al. Generalized intersection over union: a metric and a loss for bounding box regression[C]// 2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR). Long Beach:IEEE, 2019: 658-666.

(责任编辑 李 进)

收稿日期: 2021-11-07;修回日期:2022-04-07

基金项目: 山东省重点研发计划(2018GGX105004);青岛市民生科技计划(19-6-1-88-nsh)

第一作者: 孙传龙(1997-),男,山東淄博人,硕士研究生,主要研究方向为深度学习与计算机视觉在无人驾驶中的应用。

通信作者: 赵红  (1973-),女,河南南阳人,博士,副教授,主要研究方向为车辆节能减排与新能源技术。

猜你喜欢
特征融合多任务无人驾驶
我们村的无人驾驶公交
无人驾驶车辆
无人驾驶公园
基于中心化自动加权多任务学习的早期轻度认知障碍诊断
基于移动端的树木叶片识别方法的研究
基于SIFT特征的港口内舰船检测方法
融合整体与局部特征的车辆型号识别方法
基于判别性局部联合稀疏模型的多任务跟踪
基于多任务异步处理的电力系统序网络拓扑分析
基于MATLAB的道路交通标志识别