一种针对道路场景的行人检测方法

文档序号:33633315发布日期:2023-03-28 23:43阅读:42来源:国知局
一种针对道路场景的行人检测方法

1.本发明属于行人检测的技术领域,尤其涉及一种针对道路场景的行人检测方法。


背景技术:

2.人工智能技术在不断地完善与发展,逐渐从生产领域扩大到生活领域,成为人类生活的一部分。对交通道路场景中的行人进行检测是计算机视觉中的子任务,该任务用于判断所采集的图像或视频数据中是否有行人存在。若存在行人,则用矩形或其他框确定该目标所在具体位置并对应给出单个目标的判断准确率。该技术可以节约时间成本、减少人力使用资源、产生丰富的经济、社会效益,且可应用范围十分广泛。
3.在世界所有研究人员共同不断努力下,行人检测算法从低级到高级、从局域性到普遍性,逐步取得突破。文献(周永福,李文龙,胡冉冉.多尺度特征融合的双通道ssd行人头部检测算法[j].激光与光电子学进展,2021,58(24):383-394.)设计双通道ssd网络并对高、低层特征图进行特征融合,重新调整ssd的先验框的方式增加模型检测精度;文献(汪慧兰,戴舒,刘丹,等.交通场景中改进ssd算法的小尺度行人检测研究[j].计算机工程与应用,2022,58(02):201-207.)提出了基于resnet50的ssd网络架构并采用特征融合方法,以此提升模型对小尺度行人的检测能力;文献(邝先验,杨江波,张建华.基于改进的dssd算法的行人检测[j].中国仪器仪表,2021(05):21-27.)结合改进的resnext特征提取模型作为dssd检测框架的前置网络,又对深层网络进行反卷积操作提取不同尺度的特征,并将其通过采用相同的fpn融合策略与浅层网络进行多尺度的特征融合;文献(董永昌,单玉刚,袁杰.基于改进ssd算法的行人检测方法[j].计算机工程与设计,2020,41(10):2921-2926.doi:10.16208/j.issn1000-7024.2020.10.037.)以densenet作为ssd的基础网络,在其后添加四层卷积层构建新的网络并取新建网络的后四层和densenet中最后两个denseblock来提取目标框,提升模型检测精度。尽管上述算法在特定环境下检测精度有所提升,但对于特定任务下多尺度目标检测结构的设计缺乏针对性,还不能高效融合不同语义层次特征,对遮挡性目标的定位仍不准确。此外,相关工作不能平衡准确率与检测速度,还有进一步提升空间。设计兼备检测精度与速度的高效行人检测系统,已成为当前智能辅助驾驶领域的研究热点。
[0004]
ssd是一种经典的基于回归思想和anchor机制的多尺度单阶段目标检测算法,通过规范化处理原始输入图像,将其调整至固定大小300
×
300作为模型的输入。以vgg-16作为基础骨干网络,在不断下采样的过程中逐次通过尺寸大小为38
×
38、19
×
19、10
×
10、5
×
5、3
×
3和1
×
1的6个多尺度特征层,提取输入图像的特征,并先验地在预测分支上定义锚框。最后使用非极大值抑制的方式保留检测结果最好的预测框,输出检测结果。
[0005]
ssd模型结构可分为两部分:基础网络和附加网络。基础网络用于提取关键特征,由修改后的vgg-16网络组成。原vgg-16网络共有16层,包含5组卷积。
[0006]
修改部分为:保留vgg-16网络的前13个卷积层;为提升模型感受野大小,并适应pool5从原来步长为2的2
×
2卷积变成步长为1的3
×
3卷积的变化,对其进行平滑处理,即用
扩张卷积、普通卷积分别替换第一、二个全连接层。同时,去掉网络中所有的dropout层和第三个全连接层。
[0007]
附加网络用以增加模型感受野,获得高级语义特征信息,由4组卷积构成,每组分别有2个卷积层,共8个卷积层。
[0008]
最终模型在基础网络中选取conv4层,在附加网络中选取conv7层、conv8_2层、conv9_2层、conv10_2层以及conv11_2层作为检测分支。
[0009]
ssd模型采用多尺度预测方法:使用具有大尺度特征层预测小目标;使用小尺度特征层预测大目标,以此解决检测过程中存在的目标尺度变化的问题。但其6个检测分支相互独立,经过聚合运算,同步计算预测框的位置信息与分类置信度。此时,底层特征,如conv4_3,不具备高级语义信息,对目标分类任务不友好;高层特征,如conv11_2,随经过卷积运算次数的增加而缺失细节信息,对目标定位任务不友好。这样自浅至深单向传播路径的结构设计使检测分支携带的特征信息不充分,模型的检测能力还有很大的提升空间。此外,在相同尺度的预测特征层内,各目标之间的尺度大小不一,为识别该层特征层上的所有目标,需要掌握上下文信息,便于目标定位。


技术实现要素:

[0010]
基于以上现有技术的不足,本发明提出一种针对道路场景的行人检测方法,既能解决无法集成各检测分支关键信息的问题,又能解决直接进行相加操作的融合方式未考虑到待融合特征对融合后所得高级特征贡献程度的问题。
[0011]
为了实现以上发明,提出了一种针对道路场景的行人检测方法,包括以下步骤:
[0012]
s1、在gup平台搭建基于pytorch框架的ssd目标检测模型,包括特征提取骨干网络、特征提取网络和分类检测模块;
[0013]
s2、自浅至深的路径上,将对ssd模型部分检测分支输入跳跃式反向特征金字塔结构进行特征融合,充分交互、补充跨尺度分支之间的信息;
[0014]
s3、将待融合特征层上的信息通过一定的方式进行合并,得到比原特征更具备判断力的特征;
[0015]
s4、引用交叉注意力模块反复考虑目标像素特征所在行与列的注意力,捕获非局部特征语义之间的依赖关系;
[0016]
s5、设置相应的训练参数对模型进行训练,在模型达到拟合状态或到达设置的最大训练迭代次数时,停止训练并保存得到的模型及权重文件;
[0017]
s6、根据训练好的模型,读取测试数据进行测试,并对测试图片进行可视化对比,保存测试结果。
[0018]
优选的,在所述步骤s2中,将ssd模型的部分检测分支conv3_3、conv4_3、conv7、conv8_2层输入跳跃式反向特征金字塔结构,最终输出三层预测特征层,浅层信息融入深层特征的方式增强模型定位能力,增强高级语义特征相邻子特征之间信息差异性。
[0019]
优选的,在所述步骤s3中,将调整至相同分辨率的待融合特征分别通过全局平均池化和全局最大池化模块,计算后分别得到两特征层各个通道内信息分布,经过一维卷积运算,对邻近通道信息进行交互;再将对应的通道信息进行一维拼接,通过sigmoid函数交互二者每个通道内携带的信息量,在通道层面上形成注意力,将其作为更新的信息权重,再
分配回对应通道,对两个待融合的特征进行非局部信息分析,通过学习、交互、对比待融合特征层通道间非局部信息,得到对融合后特征的先验贡献度,以此作为权重,为关键信息上投入更多的注意力,直接增强或抑制相关信息,通过逐元素相加的方法有针对性地融合特征层。
[0020]
优选的,步骤s5中的训练参数包括:训练批次大小、学习速率、迭代次数、置信度阈值、非极大值抑制阈值。
[0021]
由上,本发明的针对道路场景的行人检测方法具有如下有益效果:
[0022]
(1),针对ssd模型的多尺度预测特征层相互独立,对模型的特征提取方式展开研究,解决无法集成各检测分支关键信息的问题。
[0023]
(2),针对特征融合过程中,对特征融合方式展开研究,解决直接进行相加操作的融合方式未考虑到待融合特征对融合后所得高级特征贡献程度的问题。
[0024]
(3),解决相同尺度的预测特征层内目标规模不同,同时参与目标定位预测,模型对遮挡情况下目标检测不准确,易造成目标漏检或错检的问题。
[0025]
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其他目的、特征和优点能够更明显易懂,以下结合优选实施例,并配合附图,详细说明如下。
附图说明
[0026]
为了更清楚地说明本发明实施例的技术方案,下面将对实施例的附图作简单地介绍。
[0027]
图1为本发明的针对道路场景的行人检测方法的流程图;
[0028]
图2为srfpn结构图;
[0029]
图3为自适应特征融合模块结构图。
具体实施方式
[0030]
下面结合附图详细说明本发明的具体实施方式,其作为本说明书的一部分,通过实施例来说明本发明的原理,本发明的其他方面、特征及其优点通过该详细说明将会变得一目了然。在所参照的附图中,不同的图中相同或相似的部件使用相同的附图标号来表示。
[0031]
如图1至图3所示,本发明的针对道路场景的行人检测方法,包括以下步骤:
[0032]
s1、在gup平台搭建基于pytorch框架的ssd目标检测模型,包括特征提取骨干网络、特征提取网络和分类检测模块;
[0033]
s2、自浅至深的路径上,将对ssd模型部分检测分支输入跳跃式反向特征金字塔结构进行特征融合,充分交互、补充跨尺度分支之间的信息;
[0034]
s3、将待融合特征层上的信息通过一定的方式进行合并,得到比原特征更具备判断力的特征;
[0035]
s4、引用交叉注意力模块反复考虑目标像素特征所在行与列的注意力,捕获非局部特征语义之间的依赖关系;
[0036]
s5、设置相应的训练参数对模型进行训练,在模型达到拟合状态或到达设置的最大训练迭代次数时,停止训练并保存得到的模型及权重文件;
[0037]
s6、根据训练好的模型,读取测试数据进行测试,并对测试图片进行可视化对比,保存测试结果。
[0038]
跳跃式反向特征金字塔结构
[0039]
在ssd模型中,每个检测分支之间相互独立,缺乏有效信息的互补性与关联性。fpn结构通过自深至浅的路径对相邻特征进行递归融合,pan结构通过自深至浅再自浅至深的路径进行特征融合。nas-fpn和bifpn则对金字塔结构进行堆叠的方式增加特征表达能力。
[0040]
自深至浅路径在行人检测任务上具有局限性。在融合式特征金字塔结构中,对特征连续上采样会破坏原始特征层中的像素连续性。通过插值方式引入的外来信息会随卷积运算继续向前传播,与自浅至深路径上引入的浅层特征融合后,易形成位置偏差,不利于目标定位。此外,行人检测为单目标检测任务,高级语义特征融入浅层特征层对目标分类有利,此种情况下,应重点考虑完整保留浅层特征内有利定位的信息。
[0041]
浅层信息融入深层特征的方式对提升模型的检测能力有两方面的帮助作用:
[0042]
(1)增强模型定位能力
[0043]
信息送入骨干网络再到检测分支,自浅至深经过层层卷积运算与下采样,分辨率逐渐降低,每层特征层上的子特征数量也逐渐减少,定位信息也逐渐被损耗。而深层特征语义信息相对更高级,但是,由于深层信息分辨率较小,相邻特征之间含有的信息逐渐相似。在相同分辨率的情况下,由于浅层特征的感受野较小,相比较于深层特征具备更丰富的位置、边缘等细节信息,具备更好的区分度。对两者进行特征融合后,深层特征相邻子特征由于融入了浅层特征内携带的细节信息,增强了相邻子特征之间的差异性,对目标位置更敏感。
[0044]
(2)增强高级语义特征相邻子特征之间信息差异性
[0045]
在复杂的现实生活环境下,待检测目标存在彼此遮挡情况。检测被遮挡目标的主要难点在于其可视像素有限,二者重叠程度越高,其在特征层上共享信息的比例越高。浅层特征的引入,补充了相似相邻特征之间的细节信息,使二者更具差异性,对解决遮挡问题提供了有力帮助。
[0046]
因此,设计跳跃式反向特征金字塔网络(skip reverse feature pyramid network,srfpn)。以跨尺度分支之间的信息交互与补充为目的,在自浅至深的路径上,将conv3_3、conv4_3、conv7、conv8_2层输入srfpn结构,得到预测特征层p1、p2、p3。
[0047]
srfpn结构的主要内容包括:调整特征通道数量、特征拼接以及激活函数relu。其结构如图2所示。
[0048]
首先,conv3_3层经过下采样并给予2倍的通道升维,从原来的256变为512;conv7层从原来的1024通道数降维到512;conv4_3、conv8_2层经过1
×
1卷积保持通道数不变。随后,将改变尺度的conv3_3层与conv4_3层进行相加融合,融合后的特征继续重复下采样操作与更深层特征继续融合,此为迭代操作,不再赘述。最终得到三层融合后的高级特征。由于相加融合会增加相邻像素级子特征之间差异,故用3
×
3卷积对高级特征的像素级子特征进行平滑处理,同时将通道统一调整为256。然后,将conv4_3、conv7、conv8_2层通道数统一降维到256。最后,分别通过数据归一化(图内由bn表示)和relu激活函数,再在通道层面进行特征拼接操作,得到512通道的p1、p2、p2预测特征层。
[0049]
拼接算子计算过程表示为:
[0050][0051]
其中,z
concat
表示经过拼接算子后的特征,xi、yi分别表示待融合特征,ki为卷积核,*为卷积运算。
[0052]
基于注意力机制的自适应特征融合模块
[0053]
特征融合的目的是将特征层上的信息通过一定的方式进行合并,得到比原特征更具备判断力的特征。通常情况下,进行特征融合需要选择不同尺度的特征层,而低层特征语义信息层次低,包含更多细节信息;而高级特征对细节信息不敏感,但是具备更高级的语义信息。如何结合二者对目标检测任务的有利条件,去除无关甚至不利的信息,对其进行高效融合,是提升模型检测能力的关键。
[0054]
常见的特征融合方法有两种:一是级联,即在通道的维度上拼接尺度相同的特征层;二是相加,即将对应位置的元素逐一对应加和。相加融合可以在增加信息量的同时维持原特征维度的大小,且其计算量小于级联。
[0055]
此外,在进行特征融合时,需要将不同分辨率的特征层通过上采样或下采样的方式调整到同一尺度。但是,不同分辨率的特征层携带的语义信息层次不相同,在特征融合过程中,二者在通道层面上的相关性不一致,在空间上不同规模的目标重要程度也不同,很可能在特征层上产生混叠效应和位置信息偏移,混淆定位和识别任务。为避免上述问题发生,影响模型检测精度,本发明利用注意力机制与一维卷积运算,提出一个即插即用的自适应特征融合模块,其结构如图3所示。
[0056]
该模块将调整至相同分辨率的待融合特征分别通过全局平均池化(global average pooling,gap)和全局最大池化模块(global max pooling,gmp),计算后分别得到两特征层各个通道内信息分布,经过一维卷积运算,对邻近通道信息进行交互。再将对应的通道信息进行一维拼接,通过sigmoid函数交互二者每个通道内携带的信息量,在通道层面上形成注意力,将其作为更新的信息权重,再分配回对应通道。目的是对两个待融合的特征进行非局部信息分析,通过学习、交互、对比待融合特征层通道间非局部信息,得到对融合后特征的先验贡献度,以此作为权重,为关键信息上投入更多的注意力,直接增强或抑制相关信息,通过逐元素相加的方法有针对性地融合特征层。
[0057]
该模块可以根据待融合的特征层本身携带的信息进行综合分析与计算,对比二者对应通道之间关键信息含量,自适应地增强关键信息的表征,抑制冗余信息与冲突信息,实现在特征融合的过程中自适应关注关键目标的目的。
[0058]
非局部性特征定位增强模块
[0059]
在相同尺度的特征层内,目标之间的尺度大小不一,为了识别该层特征上的所有目标,需要得到不同尺度的上下文信息辅助判别。因此,应当平等对待在相同语义级别特征的特征层内具有不同规模大小的特征信息。
[0060]
十字交叉注意力模块(ccn)仅收集以目标像素位置为基准,循环在对应宽、高方向上取交叉路径上所有像素级子特征的上下文信息,得到非局部信息依赖关系,减少了模型的计算量。
[0061]
在特征层的空间维度上,交叉注意力模块反复考虑目标像素特征所在行与列的注意力,捕获非局部特征语义之间的依赖关系。本发明引入该结构用于ssd检测模型的定位分
支,形成非局部性特征定位增强模块,精确计算预测框位置,增加对目标的定位能力。
[0062]
首先,检测分支f,f∈rc×w×h并行经过1
×
1卷积分别得到尺度大小为c'
×w×
h的特征层k、q(c'《c)以及尺度不变的特征层v,同时得到k内每个像素特征点对应索引i。将向量mu∈r
c'
×1×1与特征层q内对应行与列上h+w-1个特征向量构成的集合ωu∈r
(h+w-1)
×c',通过关联计算,得到mi与ωi之间的关联度,再通过softmax得到对应位置的注意力αi∈r
(h+w-1)
,该过程可表示为:
[0063]ai
=softmax(ωimi)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(1)
[0064]
同样,在特征层v中获取对应行列的向量集φi∈r
(h+w-1)
×c,经过聚合计算获得对应位置i的非局部上下文信息fi'∈r
(c
×1×
1)
,该过程可表示为:
[0065]fi
'=φ
itai
+fiꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(2)
[0066]
对索引进行遍历后,经过以上步骤计算,得到最终的特征层f'。为避免以十字交叉形式获取远距离特征依赖得到稀疏信息,需连续经过两次该模块。通过该操作获取信息后,再经过原定位分支卷积计算得到对应检测分支的预测框位置信息。
[0067]
为公平验证改进模型的有效性,在公开的基准pascal voc数据集上进行训练,并在该数据集下与原ssd模型、改进ssd模型系列算法、双阶段代表算法、yolo系列算法以及当前最新文献进行对比。不同算法在pascal voc数据集“person”标签的检测结果见表1。
[0068]
表1pascal voc数据集“person”标签的对比结果
[0069][0070][0071]
由表可见,本发明改进模型较双阶段代表算法faster r-cnn、ion的检测结果分别高7.1%、1.7%;较单阶段代表模型yolov3和dc-spp-yolo算法的精度分别高0.5%,6.8%;与改进ssd模型系列算法:dssd、rssd、edf-ssd、afp-ssd分别高4.1%、3.6%、2.8%、4.4%;与原基础模型ssd相比,检测精度高4.4个百分点。
[0072]
以上所述是本发明的优选实施方式而已,当然不能以此来限定本发明之权利范围,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和变动,这些改进和变动也视为本发明的保护范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1