一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于区域聚焦的多尺度道路目标检测方法

2023-02-06 15:25:35 来源:中国专利 TAG:


1.本发明涉及道路目标检测技术领域,尤其是一种基于区域聚焦的多尺度道路目标检测方法。


背景技术:

2.道路目标检测作为保障智能汽车安全驾驶的关键技术之一,广泛应用于自动驾驶系统以及车辆防碰撞系统中。汽车自动驾驶过程中遇到的场景复杂,检测目标如行人、车辆等尺寸差距大,同时各类目标又与检测摄像头距离不定,因此道路目标往往呈现出尺度大小不一的特点,易出现漏检、定位不准确等问题,对道路目标检测算法提出了极大的挑战,因此提高检测算法的多尺度检测能力对于智能汽车的安全行驶具有重要意义。
3.汽车在驾驶过程中始终处于一个复杂的场景中,为避免碰撞以及更严重的安全事故,其需要正确辨别背景与主要道路目标。道路目标易出现过度重叠的现象,并且当目标距离检测摄像头距离较远时难以检测,此时若处于高速驾驶的过程中容易导致系统反应不及时进而带来发生事故的风险。
4.目前道路目标检测主要利用卷积神经网络的特征提取能力对道路图像进行充分的提取,从而得到含有高维信息的特征图,再通过一定的手段对特征进行进一步信息提取最终定位各类目标。上述操作可以归纳为特征提取和目标定位两个步骤。随着硬件技术以及数据集的迅速发展,深度卷积神经网络广泛应用到各类目标分类网络中,能够充分学习到图像中的特征信息。在后续目标定位中一般存在两种方案,分别是另外设置网络对目标进行检测和在特征提取网络后添加检测头进行检测。由于道路目标检测对实时性要求较高,故一般采取端到端式模型,其特点是兼顾了检测精度和检测效率,但是存在检测小目标能力不足的问题,并且难以承担复杂场景中的检测任务。因此,如何提高快速检测算法的跨尺度检测能力是目前的研究热点。


技术实现要素:

5.本发明人针对上述问题及技术需求,提出了一种基于区域聚焦的多尺度道路目标检测方法,本发明的技术方案如下:
6.一种基于区域聚焦的多尺度道路目标检测方法,包括如下步骤:
7.第一步:通过固定在智能汽车前端的摄像头获取不同场景下的道路图片,将所有道路图片统一缩放为512*512的大小,并对像素值进行归一化处理作为数据集;
8.第二步:按照4:1的比例将数据集划分成训练集和测试集,对训练集中的样本使用改进的k-means-giou算法,对训练集样本中的所有真实边界框进行k均值聚类,迭代生成12个先验锚框;其中,改进的k-means-giou算法是在原先的iou上添加一项得到giou距离作为聚类距离,表达式为:
[0009][0010]
式中,a和b分别代表真实框和预测框的面积,a∩b代表两框的交集面积,a∪b代表两框的并集面积,c代表两框组成的最小闭包区域的面积;
[0011]
第三步:构建yolov3-focus模型,yolov3-focus模型包括特征提取网络、特征融合网络和检测头;其中:
[0012]
特征提取网络选用darknet53网络,darknet53网络共包含53个卷积层,并使用残差连接的方法以克服梯度消失的问题;特征融合网络采用特征金字塔网络对高低维特征进行充分融合;
[0013]
yolov3-focus模型包含四个检测头,首先,为了强化网络的跨尺度检测能力,分别在缩小4、8、16和32倍的特征图上进行检测;在检测缩小4倍的特征图的检测分支中,加入通道与空间注意力模块以及特征图裁剪模块,有助于网络关注到主要道路区域的目标并提高对这些目标的检测能力;特征图裁剪模块用于针对部分区域进行特征图的选择裁剪,裁剪条件表达式为:
[0014][0015]
式中,h、w代表图片的宽高,and代表与操作,or代表或操作;以图片左上角为坐标轴顶点,竖直向下为x轴正方向,水平向右为y轴正方向,则(h
pos
,w
pos
)为特征图上某一位置的坐标;若某一位置的坐标符合条件x,则所有通道的该位置的特征图均以0填充;
[0016]
其次,在每个检测头上采用3个先验锚框进行回归输出,针对每个锚框分别输出置信度、预测边界框位置信息以及每个类别的分数;最后按照特征图缩小尺寸将预测边界框缩放回原图尺寸,再将所有的预测边界框进行非极大值抑制处理得到最终的预测结果;
[0017]
第四步:将训练集样本输入到yolov3-focus模型进行训练,包括:
[0018]
1)加载特征提取网络的预训练权重,并固定darknet53的权重,初始化特征融合网络以及检测头的参数,再将训练集样本按批次输入到yolov3-focus模型中;
[0019]
2)将通过k均值聚类生成的先验锚框分别分配到对应的检测头,将各个检测头上的特征图划分为一个个单元格,然后判断每个单元格内是否包含目标,再依据先验锚框的尺寸在每个单元上进行回归预测;
[0020]
3)将回归预测输出的预测框按比例缩放,再采取动态分配算法为每个真实框分配相应数目的正样本;
[0021]
4)以l(t,g,o,c,o,c)为损失函数计算损失函数值并对未冻结的网络部分更新权重,为提高网络训练效率采取余弦退火学习率进行训练,学习率的值在第一次训练过程中在各个批次间从最终学习率值线性增长至初始学习率值,其后按训练次数变化,同一训练次数时不再在批次间变化学习率,学习率以训练总次数为半个周期按余弦曲线平滑变化;
[0022]
5)重复1)~4)的操作步骤,直至达到设置迭代次数;
[0023]
第五步:输出训练好的网络模型用于道路目标检测,包括:
[0024]
训练集按照第四步的训练方法进行训练;训练完成后,利用测试集进行测试,得到平均准确率、召回率和每秒检测数量等指标,最终实现道路目标的跨尺度检测。
[0025]
其进一步的技术方案为,yolov3-focus模型的损失函数包含三部分,分别是定位损失l
loc
(t,g)、置信度损失l
conf
(o,c)以及分类损失l
cls
(o,c),每一项前分别有平衡系数λ1、λ2和λ3,表达式为:
[0026]
l(t,g,o,c,o,c)=λ1l
loc
(t,g) λ2l
conf
(o,c) λ3l
cls
(o,c)
ꢀꢀꢀꢀꢀ
(3)
[0027]
定位损失l
loc
(t,g)仅计算正样本,t代表网络预测的参数,g代表真实边界框的参数,它们包含四个具体的参数,分别是框的中心点以及宽高的偏移因子,即{t
x
,ty,tw,th}、{g
x
,gy,gw,gh},定位损失l
loc
(t,g)的表达式为:
[0028][0029]
式中,b
x
=σ(t
x
) c
x
,by=σ(ty) cy,num
positive
代表正样本总数,(c
x
,cy)代表将特征图划分成单元格后的单元格左上角坐标,(pw,ph)代表先验锚框的宽度和高度,ciou的计算式如下:
[0030][0031]
式中,iou代表两框的交集面积与并集面积之比,gt代表真实框,ρ2(b,b
gt
)代表预测框和真实框的中心点的欧式距离,l代表能够同时包含预测框和真实框的最小闭包区域的对角线距离,
[0032]
目标置信度是网络输出的预测框内存在目标的概率,采用二值交叉熵损失函数计算,置信度损失l
conf
(o,c)的表达式为:
[0033][0034][0035]
式中,i代表第i个预测边界框,oi∈{0,1},oi等于1表示预测框内存在真实目标,等于0表示不存在真实目标,ci是网络输出的置信度值;
[0036]
yolov3网络针对每个类别输出一个概率c,计算损失时同样采取二值交叉熵损失函数计算且仅针对正样本计算,分类损失l
cls
(o,c)的表达式为:
[0037][0038][0039]
式中,i代表第i个预测边界框,oi∈{0,1},oi等于1表示预测框内存在第j类目标,等于0表示不存在真实目标,c
ij
是网络输出的第j类存在的概率。
[0040]
其进一步的技术方案为,采取动态分配算法为每个真实框分配相应数目的正样本,包括:
[0041]

在所有真实框中心区域放置一个5*5的正方形框,将中心点落入该框或真实框
内的正样本作为候选正样本;
[0042]

计算所有候选正样本与每个真实框的代价函数,表达式为:
[0043]
cost=l
loc
3*l
cls
100000*punish
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(10)
[0044]
式中,l
loc
代表定位损失,l
cls
代表类别损失,若该框中心点落入5*5正方形框内,设惩罚项punish为0,否则为1;
[0045]

再依次计算所有候选正样本与每个真实框的iou值,将每个真实框与所有候选正样本的iou值累加并向下取整得到n,即第i个真实框对应有ni;
[0046]

最终将代价函数值由小到大排列的前min(10,ni)个正样本分配给第i个真实框,因此落入5*5正方形框内的样本往往被优先分配;若同一候选正样本被同时分配给多个真实框,则其仅会被分配给对应代价函数值最小的那个真实框。
[0047]
本发明的有益技术效果是:
[0048]
1)本技术所提出的基于yolov3-focus模型的道路目标检测方法,结合基于giou距离的先验方法和对原始yolov3网络的改进,能够很好的处理多场景下的道路图像,具有良好的跨尺度检测能力和较高的检测效率。
[0049]
2)在yolov3-focus模型中,通过添加一个额外的检测分支,并在该检测分支中设计加入特征图裁剪模块和选用通道与空间注意力模块,提高了网络对主要道路区域的关注,增强了网络对主要道路目标的检测能力,从而提高网络对各种尺度物体的感知能力,兼顾了检测效率和检测精度,保障了智能汽车的安全驾驶。
[0050]
3)本技术能够直接输入道路图像,通过构建合适的检测结构,自动学习到低层特征,并逐步形成更加抽象的高层表示,最后直接输出目标的类别和定位框,无需将特征提取网络和目标定位网络分离设计,实现了一种端到端的目标检测模型。
附图说明
[0051]
图1是本技术提供的道路目标检测流程图。
[0052]
图2是本技术提供的yolov3-focus模型的网络结构图。
[0053]
图3是本技术提供的特征图裁剪模块示意图。
[0054]
图4是本技术提供的通道与空间注意力模块结构图。
[0055]
图5是本技术提供的yolov3-focus与yolov3-ultralytics检测效果对比图。
具体实施方式
[0056]
下面结合附图对本发明的具体实施方式做进一步说明。
[0057]
如图1所示,本实施例提供了一种基于区域聚焦的多尺度道路目标检测方法,该方法包括:采集智能汽车摄像头获取到的道路图片,并对图片大小进行统一缩放后对像素值进行归一化处理;划分数据集;构建yolov3-focus模型,加入额外的检测分支,以及在该分支上设计特征图裁剪模块和加入通道与空间注意力模块,实现网络对主要道路区域的聚焦;将训练集样本(图片)输入上述改进的yolov3-focus模型进行训练;最终输出训练好的网络模型用于道路目标检测。
[0058]
如图2所示,yolov3-focus模型的网络主要包括特征提取网络(即骨干网络)、特征融合网络和检测头。骨干网络选用darknet53网络,包含53个卷积层conv,且每个卷积层
conv后均添加一个批量归一化层bn和一个leakyrelu激活函数,三者结合即为dbl模块,同时参照resnet50采取残差连接的方式避免了梯度消失的现象。常规的spp模块对特征进行多种感受野大小不同的池化,包括5*5、9*9、13*13,再对特征进行拼接,融合了不同尺度的特征信息,提高了网络的表征性能,而本技术采用的sppf模块采取等效池化的方法,以多个5*5池化代替9*9以及13*13的池化,在效果相同的情况下减小了计算量,其具体结构见图2,其中maxpool均代表5*5最大池化层。在骨干网络之后添加四个检测分支分别对应最终的四个检测头,其分别在64*64、32*32、16*16和8*8的特征图上进行检测,在大的特征图上倾向于检测小型物体,而在小的特征图上倾向于检测大型物体。本技术在检测缩小了4倍的特征图的检测分支中加入了特征图裁剪模块以及通道与空间注意力cbam模块,其中特征图裁剪模块的示意图如图3所示,它直接将背景区域以及易检测区域(次要区域)去除并统一填充0值,强迫网络关注主要道路区域,裁剪条件如下式:
[0059][0060]
式中,h、w代表图片的宽高,and代表与操作,or代表或操作;以图片左上角为坐标轴顶点,竖直向下为x轴正方向,水平向右为y轴正方向,则(h
pos
,w
pos
)为特征图上某一位置的坐标;若某一位置的坐标符合条件x,则所有通道的该位置的特征图均以0填充。
[0061]
如图4所示,cbam模块包括通道注意力和空间注意力两个子模块,cbam模块负责提高网络对道路目标的关注。模型训练完成后,将道路图像输入yolov3-focus模型即可输出道路目标类别以及预测边界框。
[0062]
为了展示本技术“基于yolov3-focus的道路目标检测”的效果,本例以公开的kitti自动驾驶数据集为例。其数据采集设备主要包括灰度相机、彩色相机、埃德蒙光学镜片、旋转3d激光扫描仪以及惯性和gps导航系统。kitti数据集采集的场景包含乡村、城市和高速公路等,主要涉及的检测目标为汽车、卡车、行人和骑行的人,部分目标由于与摄像头距离较远或是重叠严重等原因,其标签被设置为“无法确定”,此类标签既不输入网络训练,预测结果也不包含此类标签。数据集中的单张图片包含最多15辆车以及30个行人。官方数据集包括训练集和测试集两部分,但由于测试集的标签未公开,无法验证本发明的效果,故将7481张训练集图片按照4:1的比例划分为训练集和测试集,训练样本为6000个,测试样本为1481个。在本实施例中,将缩小至指定比例后图片中像素面积小于32*32的目标定义为小目标,大于96*96的目标定义为大目标,其余则为中目标,kitti官方测试集中共包含36876个目标,其中有5901个小目标,16964个中目标,14012个大目标。
[0063]
构建yolov3-focus模型,对骨干网络darknet53加载预训练权重并冻结,初始化特征融合网络以及检测头的参数。将训练样本集输入yolov3-focus网络进行训练,模型训练过程中每个批次使用32个样本,初始学习率设置为0.001,最终学习率设置为0.000001,期间经历半个余弦周期变化。训练过程中将四张图片随机拼接在一起增强网络区分前景背景的能力,每迭代10次随机将输入图片大小变为原来的67%-150%,迭代次数设置为600次。
[0064]
训练完成后,用测试集验证模型的检测效果。此外为了验证本技术在道路目标检测任务上的优越性,将yolov3-focus与多种其他的模型进行了比较。每一种方法都用相同的训练集进行训练,用相同的测试集进行测试。测试结果评估指标分别为针对大中小型物
体的平均准确率map、单张图片检测时间(包含预测和后处理)。测试结果如表1所示,表中map@0.50代表iou阈值为0.50。
[0065]
表1各算法的检测结果评估指标
[0066][0067]
从表1可以看出,本技术提供的方法在检测大中型目标时具有一定的检测精度优势,在检测小目标时精度差于两阶段检测网络faster-rcnn和拥有更多检测头的单阶段网络retinanet。相较于yolov3-ultralytics网络,检测小物体的性能提升了3.09%,说明增加一个检测头后网络对小物体的检测能力提升明显。在检测速度方面,相较yolov3-ultralytics网络,yolov3-focus增加一个检测头以及一些模块之后对每秒检测的图片数量影响较小,并且相较两阶段网络faster-rcnn具有明显优势。
[0068]
为了更加明显展示本技术的方法相较基准网络yolov3-ultralytics的性能优势,对部分图片进行测试,如图5所示,左侧三张图片为网络输入到yolov3-focus后的检测结果,右侧三张图片为网络输入到yolov3-ultralytics后的检测结果。对比可以看出,yolov3-focus算法检测小型目标的性能更好,并且在目标重叠严重的情况下减少漏检的情况,这说明本技术方法的跨尺度检测能力较强,能够应对复杂的道路情况。
[0069]
本技术提供的yolov3-focus模型不仅对网络结构进行了改进,还对先验方法进行了一部分的改进。模型最终预测时是依据由先验方法得到的锚框尺寸进行预测,而原始先验方法对训练集中所有真实边界框依据iou距离进行k均值聚类得到所有的先验锚框尺寸。部分真实边界框的长宽比与先验锚框差距大,因而原始先验方法不利于网络对这些边界框进行预测,故采取改进的聚类距离giou(generalized intersection over union),即k-means-giou来拉近极端样本与先验锚框的尺寸差距。本实施例提出的k-means-giou的具体算法流程如表2所示,聚类算法迭代生成12个先验锚框,若前后两次生成的锚框完全相同则迭代停止。
[0070]
表2 k-means-giou聚类算法流程
[0071][0072]
依据不同的先验方法生成的锚框尺寸如表3所示,表中k代表生成的锚框数量,k=9代表生成9个锚框用于原始的仅有3个检测分支的yolov3模型,k=12代表生成12个锚框用于添加了1个检测分支的yolov3-focus模型。
[0073]
表3不同聚类方法生成的锚框尺寸
[0074][0075][0076]
从表3可以看出,由改进的基于giou距离的先验方法生成的锚框的长宽比相比原始先验方法生成的锚框的长宽比更大一点,说明改进后的先验方法明显改善了先验锚框长宽比不合理的问题,有利于降低后续模型训练时的难度和提高收敛速度。
[0077]
综上可以看出,本技术提供的yolov3-focus模型,以giou距离来生成先验锚框改善了先验锚框难以预测部分长宽比较为极端的样本,选用darknet53网络作为模型的骨干网络,提高了网络特征提取的能力,为后续预测输出提供了保障,添加一个检测分支并设计特征图裁剪模块、选用通道与空间注意力模块加入其中加强了网络对主要道路区域的感知,提高了网络对小型物体的检测精度。同时相较其他目标检测器在保持高精度检测的同时也实现了高效检测,适用于道路目标检测场景。
[0078]
以上所述的仅是本技术的优选实施方式,本发明不限于以上实施例。可以理解,本领域技术人员在不脱离本发明的精神和构思的前提下直接导出或联想到的其他改进和变化,均应认为包含在本发明的保护范围之内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献