一种基于SPD-Conv的非机动车违停监测方法

文档序号:37484331发布日期:2024-04-01 13:53阅读:75来源:国知局
一种基于SPD-Conv的非机动车违停监测方法

本发明涉及计算机视觉领域,具体涉及一种基于spd-conv的非机动车违停监测方法。


背景技术:

1、全球城市化浪汹涌,催生出城市发展的蓬勃活力,然而同时也面临着前所未有的挑战,其中,交通问题尤为突出。交通拥堵、违规停车等问题为城市流通带来困扰,成为城市发展中的焦点。科技发展本应为居民的出行体验带来提升,却因交通问题的滋生变得困难重重,这一切急需城市规划者与管理者们的有效应对。

2、在过去,交通状况的监测主要仰赖于人工巡查,但显然这种方法有着效率低下、成本昂贵的缺点。在有限的人力资源下,监测覆盖范围受限,难以满足全面的城市监测需求。同时,人工巡查下容易出现的疏漏与误判,也给交通违法的有效监管带来了难题。

3、在当下,计算机视觉、深度学习等领域的技术蓬勃发展,复杂交通问题的自动化分析在图像识别与数据分析算法的日益完善下成为可能,智能交通监测系统迎来前所未有的发展机遇。

4、计算机视觉下,模拟人类的视觉系统,从图像中提取丰富的信息。深度学习兴起,为机器理解图像和数据提供了新的范式。它们为监测系统赋能,使其能准确区分车辆和非车辆,智能识别违规停车行为,使高效的交通数据分析得以实现。技术不断创新,带来了前所未有的解决方案,传统监测手段的瓶颈正在被打破,有望实现对交通问题更全面、高效的监控。


技术实现思路

1、本发明的目的在于提供一种基于spd-conv的非机动车违停监测方法,该方法能够准确有效地对非机动车的违章停放行为进行检测。

2、为了实现上述目的,本发明采用的技术方案是:一种基于spd-conv的非机动车违停监测方法,包括如下步骤:

3、步骤s1:收集与非机动车相关的有效素材,构建初始数据集,然后采用gridmask结合albumentations的数据增强方法对初始数据集进行数据增强操作,以进一步丰富数据集;

4、步骤s2:构建改进的yolov7网络,包括在骨干网络以及头部网络中添加spd-conv卷积构建块、加入自注意力和卷积集成并融合acmix结构以及使用eiou损失函数;

5、步骤s3:将数据集投入训练,配置yolov7检测模块,构建非机动车行为判断模块。

6、进一步地,步骤s1具体包括以下步骤:

7、步骤s11:通过包括网络爬虫以及实地拍摄的多种方式,收集非机动车相关的素材,并通过分拣提炼出其中的有效部分;

8、步骤s12:对于相关的视频素材,进行抽帧处理;

9、步骤s13:对所有素材进行标注,形成初始数据集;

10、步骤s14:对初始数据集进行数据增强操作;首先,采用albumentations数据增强方法,对数据集进行第一次变换;然后,对于经albumentations数据增强变换后的数据集,采用gridmask方法对数据集进行进一步增强。

11、进一步地,采用gridmask方法对数据集进行进一步增强的具体方法为:

12、gridmask数据增强方法的作用形式为:

13、

14、其中,gm_x∈rgm_h×gm_w×gm_c为输入的图像,为增广后的图像,gm_h、gm_w、gm_c分别表示输入图像的高度、宽度以及通道数;gm_m∈{0,1}gm_h×gm_w为要删除的像素的二进制掩码,0表示挡住,1表示保留;

15、形成gm_m需要4个超参数(gm_r,gm_d,gm_δx,gm_δy):

16、gm_r为一个单位中较短灰边的比率,决定了输入图像的保持比例,其值介于0与1之间,计算方法如下:

17、保持比率gm_k为:

18、

19、其中,sum表示求和;

20、根据gm_r以及gm_k之间的关系:

21、gm_k=1-(1-gm_r)2=2gm_r-gm_r2

22、即可计算出gm_r的值,gm_r的值小于1,gm_r和gm_k正相关,gm_k越大,灰色区域越多,遮挡越少;gm_k越小,黑色区域越多,遮挡越多;其中灰色区域表示未遮挡面积,黑色区域表示遮挡面积;

23、gm_d为一个单位的长度;一个单位内,灰色区域的长度gm_l为:

24、gm_l=gm_r×gm_d

25、其中gm_d的选择为:

26、gm_d=random(d_max,d_min)

27、其中,d_max与d_min分别为单位长度的最大值以及最小值,random表示在两个数之间取随机数;

28、gm_δx,gm_δy表示第一个完整单元与图像边界之间沿x、y方向的距离,随机选择以覆盖所有可能;其选择如下:

29、gm_δx(gm_δy)=random(0,gm_d-1)。

30、进一步地,步骤s2中,在yolov7网络的骨干网络以及头部网络中添加spd-conv卷积构建块,具体包括以下步骤:

31、步骤s211:构建spd层;spd组件将图像变换技术应用到cnn内部以及整个cnn的下采样特征图中;考虑任何大小为spd_s(宽度)×spd_s(高度)×spd_c1(通道数)的特征图spd_x,将一系列子特征图分割为:

32、f0,0=spd_x[0:spd_s:scale,0:spd_s:scale],

33、f1,0=spd_x[1:spd_s:scale,0:spd_s:scale],...,

34、fscale-1,0=spd_x[scale-1:spd_s:scale,0:spd_s:scale];

35、f0,1=spd_x[0:spd_s:scale,1:spd_s:scale],f1,1,...,

36、fscale-1,1=spd_x[scale-1:spd_s:scale,1:spd_s:scale];

37、...

38、f0,scale-1=spd_x[0:spd_s:scale,scale-1:spd_s:scale],f1,scale-1,...,

39、fscaie-1,scale-1=spd_x[scale-1:spd_s:scale,scale-1:spd_s:scale].

40、对于任意原始的特征图spd_x,通过选取所有满足spd_i+spd_x和spd_j+spd_y能被scale整除的spd_x(spd_i,spd_j)条目,形成一个子特征图fspd_x,spd_y;其中,spd_i和spd_j表示特征图中的不同条目的索引;spd_x和spd_y代表不同的特征条目;因此,每个子特征图将原始特征图spd_x下采样一个scale;然后,沿通道维度连接这些子特征图,从而获得一个特征图spd_x′,其空间维度减小一个scale,而通道维度增加了一个scale2;即spd将特征图spd_x(spd_s,spd_s,spd_c1)转换成一个中间特征图其中,scale代表比例尺度;

41、步骤s212:构建非跨步卷积层;在spd特征转换层之后,添加一个非步进的卷积层,具有spd_c2个滤波器,其中spd_c2<scale2spd_c1;进一步将转换为

42、进一步地,步骤s2中,加入自注意力和卷积集成并融合acmix结构的具体实现方法为:

43、acmix包括两个阶段:

44、第一阶段:通过三个1×1卷积对输入特征进行投影,然后将其重塑为acmix_n个特征子集;因此,得到一组丰富的中间特征,其中包含3×acmix_n个特征映射;

45、第二阶段:这些特征子集分别遵循不同的模式;对于自注意力路径,将中间特征划分为acmix_n组,每组包含3个特征,每个特征来自1×1卷积;这三个特征图分别用作query(查询)、key(键)和value(值),遵循多头自注意力模块;对于卷积路径,卷积核大小为acmix_k,采用轻量级全连接层生成acmix_k个特征映射;因此,通过对生成的特征进行平移和聚合,对输入特征进行卷积处理,并从局部感受野中收集信息;

46、最后,将两个路径的输出相加,其强度由两个可学习标量控制:

47、fout=acmix_αfatt+acmix_βfconv

48、其中,fout表示路径的最终输出;fatt表示自注意力分支的输出;fconv表示卷积注意力分支的输出;参数acmix_α和acmix_β的值均为1;

49、两分支的输出结果经过合并后,兼顾全局特征和局部特征,从而提升了网络对于小目标的检测效果。

50、进一步地,步骤s2中,使用eiou损失函数的具体实现方法为:

51、将原yolov7网络采用的ciou损失函数替换为eiou损失函数,eiou的惩罚项是在ciou惩罚项的基础上将纵横比的影响因子拆开分别计算其目标框和锚框的长与宽,eiou损失函数中包含三个部分:重叠损失、中心距离损失和宽高损失,前两部分延续ciou中的方法,但是宽高损失直接使目标盒与锚盒的宽度和高度之差最小,使得收敛速度更快;eiou的惩罚项公式如下:

52、

53、其中,iou_a表示预测框,iou_b表示真实框,iou表示预测框和真实框之间的交集和并集之比;

54、

55、其中,b表示预测框中心点,bgt表示真实框中心点,ρ(n,bgt)表示两个中心点的欧式距离,c表示能够同时包含预测框和真实框的最小闭包区域的对角线距离;w表示预测框宽度,wgt表示真实框宽度,ρ(w,wgt)表示两个框的宽度之差的绝对值,cw表示覆盖两个框的最小外接框宽度;h表示预测框高度,hgt表示真实框高度,ρ(h,hgt)表示两个框的高度之差的绝对值、ch表示覆盖两个框的最小外接框高度。

56、进一步地,步骤s3具体包括以下步骤:

57、步骤s31:将增强后的数据集投入改进后的yolov7网络中进行训练,获取权重文件后,配置yolov7检测模块,即可进行非机动车检测;

58、步骤s32:将监控摄像头的数据以帧为单位传入yolov7检测模块,获取目标范围中非机动车的坐标;同时以现实时间为基准,更新时间记录文件,更新规则如下:

59、令file表示时间记录文件,file={(x_idx,y_idx,t_idx)}表示文件中的坐标x_idx,y_idx及其首次出现时间t_idx的集合;

60、1)若(x_det,y_det)在file中不存在,则执行操作:将(x_det,y_det,t_now)添加到file;

61、2)若(x_det,y_det)在file中存在,则不进行任何更改;

62、3)若(x_idx,y_idx)在file中存在,但并未被检测到,则执行操作:从file中删除(x_idx,y_idx,t_idx);

63、其中,(x_det,y_det)表示检测到目标的坐标,t_now表示当前时间;

64、设置一个阈值ωstatic,对于坐标位置波动δd在阈值范围内的目标,认为其为同一目标,即δd<wstatic时,目标静止;

65、步骤s33:判断非机动车辆是否在停车区内;

66、遍历所有检测到非机动车目标的坐标信息(x_idx,y_idx),将其与停车区域划分文件中圈定的停车范围area比对,若目标置于停车区外,则执行步骤s34;

67、步骤s34:判断非机动车行为,静止或运动;

68、根据坐标信息,在时间记录文件中查找对应的时间信息,即目标第一次出现的时间t1,这时获取现实时间t0,即得到目标的静止时长tstatic=t0-t1,设置一个时间阈值δt,对于超出阈值的目标,即tstatic<δt,则认定为超时停车;

69、步骤s35:输出检测信息;

70、对于步骤33以及步骤34同时认定的目标,则认定其属于违章停放,此时给予用户反馈,在目标检测原功能的基础上,将违停车辆计数输出,同时将数据帧中违停车辆框出,采用“warning”作为标签。

71、与现有技术相比,本发明具有以下有益效果:

72、1.本发明在构建非机动车数据集时,采用爬虫与实地收集相结合,尽可能的丰富适用场景,后对基础数据集进行gridmask结合albumentations的数据增强,以提高后期训练效果

73、2.本发明提出了改进的yolov7目标检测模型,包括在骨干网络(backbone)以及头部网络(head)中添加spd-conv、加入自注意力和卷积集成并融合acmix结构,以提升检测精度,尤其是在具有低分辨率图像和小物体的艰巨任务上。

74、3.本发明提出eiou loss作为损失函数,以进一步提高检测准确率;

75、4.本发明针对不同场景下道路中的非机动车及其违停行为均由良好的检测识别能力,并验证了结果的准确性。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1