违章车辆检测方法、装置、终端设备及存储介质与流程

文档序号:31273521发布日期:2022-08-27 00:06阅读:89来源:国知局
违章车辆检测方法、装置、终端设备及存储介质与流程

1.本技术属于监控技术领域,尤其涉及一种违章车辆检测方法、装置、终端设备及存储介质。


背景技术:

2.执行特别任务的车辆在执行任务(例如校车停止行驶学生上下车)时,为保证相关人员(如学生)的安全,法律法规禁止其他社会车辆从其侧路穿行。对于社会车辆的违章行驶问题,现有解决方案是通过红外信号感应的方式实现违章车辆的检测。但由于车辆行驶的道路环境非常复杂多样,受太阳光照、照明灯照射、周边电路和设备的电磁波噪声的干扰,严重影响了红外信号的发送和接收。
3.基于此,目前主要依靠人力查看摄像机所拍摄的视频来发现违章行驶的车辆,但这种方式的效率低且容易遗漏。


技术实现要素:

4.本技术实施例提供了一种违章车辆检测方法、装置、终端设备及存储介质,可以解决违章车辆的检测效率低且容易遗漏的问题。
5.第一方面,本技术实施例提供了一种违章车辆检测方法,包括:
6.在目标车辆位于目标区域的情况下,获取目标车辆周边预设违章检测区域的图像数据;
7.根据图像数据,确定除目标车辆以外的其他车辆在预设违章检测区域内的跟踪轨迹;
8.根据跟踪轨迹确定其他车辆是否为违章车辆。
9.可选的,图像数据包括多帧图像,根据图像数据,确定除目标车辆以外的其他车辆在预设违章检测区域内的跟踪轨迹,包括:
10.对多帧图像中的每帧图像进行车辆检测,得到每帧图像的车辆检测结果;
11.根据多帧图像的车辆检测结果,确定除目标车辆以外的其他车辆在预设违章检测区域内的跟踪轨迹。
12.可选的,车辆检测结果包括车辆检测框以及车辆检测框的位置信息;
13.根据多帧图像的车辆检测结果,确定除目标车辆以外的其他车辆在预设违章检测区域内的跟踪轨迹,包括:
14.分别针对多帧图像中的每相邻两帧图像,对相邻两帧图像的车辆检测框进行匹配,得到相邻两帧图像的匹配结果;匹配结果包括相邻两帧图像中属于同一其他车辆的车辆检测框;
15.分别针对图像数据中的每一其他车辆,根据其他车辆的所有车辆检测框的位置信息,生成其他车辆在预设违章检测区域内的跟踪轨迹。
16.可选的,对相邻两帧图像的车辆检测框进行匹配,得到相邻两帧图像的匹配结果,
包括:
17.通过匈牙利匹配算法对相邻两帧图像的车辆检测框进行匹配,得到第一置信度以及第一置信度对应的匹配结果;第一置信度对应的匹配结果包括相邻两帧图像中属于同一其他车辆的车辆检测框;
18.通过reid模型对相邻两帧图像的车辆检测框进行匹配,得到第二置信度以及第二置信度对应的匹配结果;第二置信度对应的匹配结果包括相邻两帧图像中属于同一其他车辆的车辆检测框;
19.将第一置信度和第二置信度中的较大者对应的匹配结果,作为相邻两帧图像的匹配结果。
20.可选的,对多帧图像中的每帧图像进行车辆检测,得到每帧图像的车辆检测结果,包括:
21.通过yolov3检测模型对多帧图像中的每帧图像进行车辆检测,得到每帧图像的车辆检测结果;
22.yolov3检测模型的主干网络包括依次连接的多个特征提取层,特征提取层包括依次连接的第一cbl模块、第二cbl模块和csp模块,yolov3检测模型的特征融合网络包括依次连接的fpn和pan,多个特征提取层中最后一个特征提取层的csp模块的输出端与fpn的输入端连接。
23.可选的,根据跟踪轨迹确定其他车辆是否为违章车辆,包括:
24.判断跟踪轨迹是否与预设违章警示标识存在交集;
25.若跟踪轨迹与预设违章警示标识不存在交集,则确定其他车辆不是违章车辆;
26.若跟踪轨迹与预设违章警示标识存在交集,则判断跟踪轨迹的起始位置与终止位置之间的距离是否大于或等于预设距离;
27.若起始位置与终止位置之间的距离大于或等于预设距离,则确定其他车辆为违章车辆;
28.若起始位置与终止位置之间的距离小于预设距离,则确定其他车辆不是违章车辆。
29.可选的,在根据跟踪轨迹确定其他车辆是否为违章车辆之后,方法还包括:
30.在确定其他车辆为违章车辆的情况下,将确定其他车辆为违章车辆的时间作为其他车辆的违章时间,并获取其他车辆在违章时间的位置信息;
31.将图像数据中违章时间对应的图像帧作为其他车辆的违章图像;
32.输出用于提示其他车辆为违章车辆的报警信息;报警信息包括违章时间、其他车辆在违章时间的位置信息以及违章图像。
33.可选的,在获取目标车辆周边预设违章检测区域的图像数据之后,方法还包括:
34.将图像数据发送给主机设备;
35.输出用于提示其他车辆为违章车辆的报警信息,包括:
36.根据违章图像的时间戳信息,生成违章图像的标识信息,并将标识信息发送给主机设备,以使主机设备根据标识信息从接收到的图像数据中确定违章图像;
37.将违章时间以及其他车辆在违章时间的位置信息发送给主机设备;
38.通过主机设备输出用于提示其他车辆为违章车辆的报警信息。
39.第二方面,本技术实施例提供了一种违章车辆检测装置,包括:
40.获取模块,用于在目标车辆位于目标区域的情况下,获取目标车辆周边预设违章检测区域的图像数据;
41.第一确定模块,用于根据图像数据,确定除目标车辆以外的其他车辆在预设违章检测区域内的跟踪轨迹;
42.第二确定模块,用于根据跟踪轨迹确定其他车辆是否为违章车辆。
43.可选的,图像数据包括多帧图像,第一确定模块包括:
44.检测子模块,用于对多帧图像中的每帧图像进行车辆检测,得到每帧图像的车辆检测结果;
45.第一确定子模块,用于根据多帧图像的车辆检测结果,确定除目标车辆以外的其他车辆在预设违章检测区域内的跟踪轨迹。
46.可选的,车辆检测结果包括车辆检测框以及车辆检测框的位置信息;相应的,第一确定子模块包括:
47.匹配单元,用于分别针对多帧图像中的每相邻两帧图像,对相邻两帧图像的车辆检测框进行匹配,得到相邻两帧图像的匹配结果;匹配结果包括相邻两帧图像中属于同一其他车辆的车辆检测框;
48.生成单元,用于分别针对图像数据中的每一其他车辆,根据其他车辆的所有车辆检测框的位置信息,生成其他车辆在预设违章检测区域内的跟踪轨迹。
49.可选的,匹配单元包括:
50.第一匹配子单元,用于通过匈牙利匹配算法对相邻两帧图像的车辆检测框进行匹配,得到第一置信度以及第一置信度对应的匹配结果;第一置信度对应的匹配结果包括相邻两帧图像中属于同一其他车辆的车辆检测框;
51.第二匹配子单元,用于通过reid模型对相邻两帧图像的车辆检测框进行匹配,得到第二置信度以及第二置信度对应的匹配结果;第二置信度对应的匹配结果包括相邻两帧图像中属于同一其他车辆的车辆检测框;
52.第三匹配子单元,用于将第一置信度和第二置信度中的较大者对应的匹配结果,作为相邻两帧图像的匹配结果。
53.可选的,检测子模块,具体用于通过yolov3检测模型对多帧图像中的每帧图像进行车辆检测,得到每帧图像的车辆检测结果;
54.yolov3检测模型的主干网络包括依次连接的多个特征提取层,特征提取层包括依次连接的第一cbl模块、第二cbl模块和csp模块,yolov3检测模型的特征融合网络包括依次连接的fpn和pan,多个特征提取层中最后一个特征提取层的csp模块的输出端与fpn的输入端连接。
55.可选的,第二确定模块包括:
56.第一判断子模块,用于判断跟踪轨迹是否与预设违章警示标识存在交集,并若跟踪轨迹与预设违章警示标识不存在交集,则触发第二确定子模块,若跟踪轨迹与预设违章警示标识存在交集,则触发第二判断子模块;
57.第二确定子模块,用于根据第一判断子模块的触发,确定其他车辆不是违章车辆;
58.第二判断子模块,用于根据第一判断子模块的触发,判断跟踪轨迹的起始位置与
终止位置之间的距离是否大于或等于预设距离,并若起始位置与终止位置之间的距离大于或等于预设距离,则触发第三确定子模块,若起始位置与终止位置之间的距离小于预设距离,则触发第四确定子模块;
59.第三确定子模块,用于根据第二判断子模块的触发,确定其他车辆为违章车辆;
60.第四确定子模块,用于根据第二判断子模块的触发,确定其他车辆不是违章车辆。
61.可选的,违章车辆检测装置还包括:
62.第一处理模块,用于在确定其他车辆为违章车辆的情况下,将确定其他车辆为违章车辆的时间作为其他车辆的违章时间,并获取其他车辆在违章时间的位置信息;
63.第二处理模块,用于将图像数据中违章时间对应的图像帧作为其他车辆的违章图像;
64.输出模块,用于输出用于提示其他车辆为违章车辆的报警信息;报警信息包括违章时间、其他车辆在违章时间的位置信息以及违章图像。
65.可选的,违章车辆检测装置还包括:
66.发送模块,用于将图像数据发送给主机设备;
67.相应的,输出模块包括:
68.生成子模块,用于根据违章图像的时间戳信息,生成违章图像的标识信息,并将标识信息发送给主机设备,以使主机设备根据标识信息从接收到的图像数据中确定违章图像;
69.发送子模块,用于将违章时间以及其他车辆在违章时间的位置信息发送给主机设备;
70.输出子模块,用于通过主机设备输出用于提示其他车辆为违章车辆的报警信息。
71.第三方面,本技术实施例提供了一种终端设备,包括存储器、处理器、摄像头组件以及存储在存储器中并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述的违章车辆检测方法。
72.第四方面,本技术实施例提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现上述的违章车辆检测方法。
73.第五方面,本技术实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行上述第一方面中任一项的违章车辆检测方法。
74.本技术实施例与现有技术相比存在的有益效果是:
75.在本技术的实施例中,通过在目标车辆位于目标区域的情况下,获取目标车辆周边预设违章检测区域的图像数据,并基于该图像数据获取其他车辆在预设违章检测区域内的跟踪轨迹,最终依据该跟踪轨迹自动判断其他车辆是否为违章车辆,从而实现了违章车辆的自动化检测,这与人工检测的方式相比大大提高了违章车辆的检测效率,同时也减少了出现违章车辆漏检的情况。
附图说明
76.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附
图获得其他的附图。
77.图1是本技术一实施例提供的违章车辆检测方法的流程图;
78.图2是本技术一实施例提供的步骤13的具体实现方式的流程图;
79.图3是本技术一实施例提供的输出报警信息的流程图;
80.图4是本技术一实施例提供的步骤12的具体实现方式的流程图;
81.图5是本技术一实施例提供的违章车辆检测装置的结构示意图;
82.图6是本技术一实施例提供的终端设备的结构示意图。
具体实施方式
83.以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本技术实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本技术。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本技术的描述。
84.应当理解,当在本技术说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
85.还应当理解,在本技术说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
86.如在本技术说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
[0087]
另外,在本技术说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
[0088]
在本技术说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本技术的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
[0089]
目前主要依靠人力查看摄像机所拍摄的视频来发现违章行驶的车辆,但这种方式的效率低且容易遗漏。
[0090]
针对上述问题,本技术实施例提供了一种违章车辆检测方法,该方法通过在目标车辆位于目标区域的情况下,获取目标车辆周围的图像数据,并基于该图像数据生成其他车辆的跟踪轨迹,最终依据该跟踪轨迹自动判断其他车辆是否为违章车辆,从而实现了违章车辆的自动化检测,这与人工检测的方式相比大大提高了违章车辆的检测效率,同时也减少了出现违章车辆漏检的情况。
[0091]
下面结合具体实施例对本技术提供的违章车辆检测方法进行示例性的说明。
[0092]
实施例一
[0093]
本技术实施例提供的违章车辆检测方法可以由具备图像采集功能的终端设备执行,下述实施例以该方法由终端设备执行为例。作为一种示例,该终端设备可以是相机、微型计算机、平板等电子设备,本技术实施例对此不做限定。
[0094]
如图1所示,本技术实施例提供的违章车辆检测方法包括如下步骤:
[0095]
步骤11,在目标车辆位于目标区域的情况下,获取目标车辆周边预设违章检测区域的图像数据。
[0096]
上述目标车辆可以为执行特别任务的车辆,例如接送学生的校车;上述目标区域可以是根据实际需求指定的区域,例如校车的停靠站点;上述预设违章检测区域可以是目标车辆在目标区域执行任务时禁止其他车辆行驶的区域。为便于终端设备采集预设违章检测区域的图像数据,终端设备可以设置于目标车辆的外表面。
[0097]
在本技术的一些实施例中,当目标车辆到达目标区域内时(例如当校车停靠在停靠站点并开启stop牌时),用户可通过向终端设备输入检测启动指令的方式,触发终端设备执行本技术实施例提供的违章车辆检测方法。即,终端设备在接收到检测启动指令时,确定目标车辆位于目标区域内,启动自身的摄像头组件获取目标车辆周边预设违章检测区域的图像数据。
[0098]
当然,终端设备也可以通过自身的定位系统确定目标车辆的位置信息,而当目标车辆的位置信息与预先设定的目标区域的位置信息一致时,确定目标车辆位于目标区域内,启动自身的摄像头组件获取目标车辆周边预设违章检测区域的图像数据。
[0099]
步骤12,根据图像数据,确定除目标车辆以外的其他车辆在预设违章检测区域内的跟踪轨迹。
[0100]
上述其他车辆是指除目标车辆以外的其他社会车辆;上述跟踪轨迹主要用于表示其他车辆在预设违章检测区域内的行驶轨迹,以便后续根据该行驶轨迹快速、准确的判断其他车辆是否为违章车辆。其中,根据图像数据确定跟踪轨迹的具体实现方式将在后文详细阐述。
[0101]
步骤13,根据跟踪轨迹确定其他车辆是否为违章车辆。
[0102]
在本技术的一些实施例中,终端设备在基于获取到的图像数据,得到其他车辆在预设违章检测区域内的跟踪轨迹后,能依据该跟踪轨迹自动判断其他车辆是否为违章车辆,实现违章车辆的自动化检测,这与人工检测的方式相比大大提高了违章车辆的检测效率,大大节约了人力成本,同时也减少了出现违章车辆漏检的情况。
[0103]
下面对判断其他车辆是否为违章车辆的具体过程进行示例性的说明。
[0104]
在本技术的一些实施例中,如图2所示,上述步骤13,根据跟踪轨迹确定其他车辆是否为违章车辆的具体实现方式包括如下步骤:
[0105]
步骤21,判断跟踪轨迹是否与预设违章警示标识存在交集,若跟踪轨迹与预设违章警示标识存在交集,则执行步骤22,否则,执行步骤24。
[0106]
在本技术的一些实施例中,由于预设违章检测区域内可能存在与目标车辆行驶方向相同的其他车辆,也可能存在与目标车辆行驶方向相反的其他车辆。基于此,上述预设违章警示标识可以为预先设置于图像数据的画面中的两条报警线,其中一条报警线为针对与目标车辆行驶方向相同的其他车辆设置的报警线,另一条报警线为针对与目标车辆行驶方向相反的其他车辆设置的报警线。
[0107]
即,对于与目标车辆行驶方向相同的其他车辆,若其他车辆的跟踪轨迹与该其他车辆对应的报警线存在交集,则确定该其他车辆的跟踪轨迹与预设违章警示标识存在交集,并执行步骤22;若该其他车辆的跟踪轨迹与该其他车辆对应的报警线不存在交集,则确定该其他车辆的跟踪轨迹与预设违章警示标识不存在交集,进而确定该其他车辆不是违章车辆。对于与目标车辆行驶方向相反的其他车辆,若其他车辆的跟踪轨迹与该其他车辆对应的报警线存在交集,则确定该其他车辆的跟踪轨迹与预设违章警示标识存在交集,并执行步骤22;若该其他车辆的跟踪轨迹与该其他车辆对应的报警线不存在交集,则确定该其他车辆的跟踪轨迹与预设违章警示标识不存在交集,进而确定该其他车辆不是违章车辆。
[0108]
步骤22,判断跟踪轨迹的起始位置与终止位置之间的距离是否大于或等于预设距离,若起始位置与终止位置之间的距离大于或等于预设距离,则执行步骤23,否则,执行步骤24。
[0109]
在本技术的一些实施例中,当确定其他车辆的跟踪轨迹与预设违章警示标识存在交集时,需要判断其他车辆是否产生了明显的移动距离,以确定在目标车辆位于目标区域内时其他车辆是否在预设违章检测区域内行驶。其中,若跟踪轨迹的起始位置与终止位置之间的距离大于或等于预设距离(该预设距离的具体数值可根据实际情况进行设定),则确定其他车辆产生了明显的移动距离,而若跟踪轨迹的起始位置与终止位置之间的距离小于预设距离,则确定其他车辆未产生明显的移动距离。
[0110]
需要说明的是,若其他车辆产生了明显的移动距离,则确定在目标车辆位于目标区域内时其他车辆在预设违章检测区域内行驶,进而确定该其他车辆为违章车辆;而若其他车辆未产生明显的移动距离,则确定在目标车辆位于目标区域内时其他车辆未在预设违章检测区域内行驶,进而确定该其他车辆不是违章车辆。
[0111]
步骤23,确定其他车辆为违章车辆。
[0112]
步骤24,确定其他车辆不是违章车辆。
[0113]
可见,在本技术的一些实施例中,终端设备能根据其他车辆的跟踪轨迹自动识别其他车辆是否为违章车辆,实现违章车辆的自动化检测,从而大大提高了违章车辆的检测效率,节约了人力成本,同时也减少了出现违章车辆漏检的情况。
[0114]
在本技术的一些实施例中,为便于交通管理人员及时对违章车辆进行处理,在确定其他车辆为违章车辆的情况下,如图3所示,上述违章车辆检测方法还包括如下输出报警信息的步骤:
[0115]
步骤31,将确定其他车辆为违章车辆的时间作为其他车辆的违章时间,并获取其他车辆在违章时间的位置信息。
[0116]
上述违章时间是指其他车辆发生违章的时间,需要说明的是,由于终端设备是在采集获取图像数据的同时,根据图像数据确定其他车辆的跟踪轨迹,并根据跟踪轨迹确定其他车辆是否为违章车辆。即图像数据的采集与违章车辆的确定是同步进行的,因此可以将确定其他车辆为违章车辆的时间作为该其他车辆的违章时间。
[0117]
上述其他车辆在违章时间的位置信息是指该其他车辆违章时的位置信息。具体的,在本技术的一些实施例中,通过yolov3检测模型对多帧图像中的每帧图像进行车辆检测,得到每帧图像中其他车辆在违章时间的位置信息。
[0118]
步骤32,将图像数据中违章时间对应的图像帧作为其他车辆的违章图像。
[0119]
如前文所述,由于图像数据的采集与违章车辆的确定是同步进行的,因此图像数据中违章时间对应的图像帧即为其他车辆违章时的图像帧。
[0120]
步骤33,输出用于提示其他车辆为违章车辆的报警信息。
[0121]
上述报警信息包括违章时间、其他车辆在违章时间的位置信息以及违章图像。在本技术的一些实施例中,终端设备可以向外部终端(如交通管理平台的服务器设备)输出上述报警信息,从而便于相关人员(如交通管理人员)能够快速、清晰的获知其他车辆违章时的位置和时间,使得相关人员能及时对违章车辆进行处理。同时由于报警信息中携带其他车辆违章时的违章图像,从而使得相关人员在对违章车辆进行处理时,无需人工复核交通监管录像,大大节约了人力成本。
[0122]
在本技术的一些实施例中,为提升终端设备的运行速度,确保检测违章车辆的效率,终端设备可以在获取到目标车辆周边预设违章检测区域的图像数据后,将该图像数据传输给与该终端设备连接的主机设备进行存储。基于此,上述报警信息也可以通过该主机设备输出。相应的,上述步骤33,输出用于提示其他车辆为违章车辆的报警信息的具体实现方式为:首先根据违章图像的时间戳信息,生成违章图像的标识信息,并将标识信息发送给主机设备,以使主机设备根据标识信息从接收到的图像数据中确定违章图像;然后将违章时间以及其他车辆在违章时间的位置信息发送给主机设备;最终通过主机设备输出用于提示其他车辆为违章车辆的报警信息。
[0123]
在本技术的一些实施例中,上述图像数据中各图像帧的时间戳信息互不相同,因此根据违章图像的时间戳信息生成的标识信息能唯一标识该违章图像。示例性的,在本技术的一些实施例中,可根据预先设定的标识信息生成规则生成标识信息(如通用唯一识别码(uuid,universally unique identifier)),例如直接将违章图像的时间戳信息作为该违章图像的标识信息。
[0124]
需要说明的是,终端设备在生成违章图像的标识信息后,将该标识信息、其他车辆的违章时间以及其他车辆在违章时间的位置信息发送给主机设备,以使主机设备根据标识信息从存储的图像数据中查询到违章图像,并输出包含有违章图像、违章时间以及其他车辆在违章时间的位置信息的报警信息。可以理解的是,与终端设备输出报警信息类似的,主机设备也可以将报警信息输出给外部终端(如交通管理平台的服务器设备)输出上述报警信息,从而便于相关人员(如交通管理人员)能够快速、清晰的获知其他车辆违章时的位置、时间和图像,使得相关人员能及时对违章车辆进行处理。
[0125]
下面结合附图对跟踪轨迹的获取过程进行示例性的说明。
[0126]
在本技术的一些实施例中,为便于准确获取其他车辆在预设违章检测区域内的跟踪轨迹,终端设备获取的图像数据包括多帧图像。示例性的,终端设备获取的图像数据可以为视频数据。
[0127]
相应的,如图4所示,上述步骤12,根据图像数据,确定除目标车辆以外的其他车辆在预设违章检测区域内的跟踪轨迹的具体实现方式包括如下步骤:
[0128]
步骤41,对多帧图像中的每帧图像进行车辆检测,得到每帧图像的车辆检测结果。
[0129]
在本技术的一些实施例中,可通过yolov3检测模型对多帧图像中的每帧图像进行车辆检测,得到每帧图像的车辆检测结果。其中,每帧图像的车辆检测结果包括车辆检测框以及车辆检测框的位置信息,该位置信息指的是车辆检测框在图像中的位置信息。
[0130]
上述yolov3检测模型的主干(backbone)网络包括依次连接的多个特征提取层,该特征提取层包括依次连接的第一cbl模块、第二cbl模块和csp模块;yolov3检测模型的特征融合网络(即neck部分)包括依次连接的特征金字塔网络(fpn,feature pyramid networks)和路径增强网络(pan,path aggregation network),且多个依次连接的特征提取层中最后一个特征提取层的csp模块的输出端与fpn的输入端连接。
[0131]
其中,上述第一cbl模块和第二cbl模块执行的操作均为卷积处理、批归一化处理和激活函数处理,但第一cbl模块和第二cbl模块不同的是二者的具体参数不同,即执行卷积处理、批归一化处理和激活函数处理时对数据的处理程度不同。上述csp模块执行的操作为:将输入csp模块的特征图拆成两个部分,一部分进行卷积操作,得到卷积操作的结果,另一部分和卷积操作的结果进行特征拼接(concate)。值得一提的是,通过csp模块对两个特征图的拼接,提高了主干网络提取特征的能力。示例性的,为确保主干网络提取特征的能力,上述主干网络中特征提取层的数量可以为3个,当然可以理解的是,在本技术的实施中,并不对特征提取层的数量进行限制,其具体数量可根据实际情况进行设定。
[0132]
上述neck部分最主要的作用是对主干网络提取的特征做进一步的特征融合,提升yolov3检测模型的表达能力。其中,fpn是用于缓解目标检测中的多尺度问题,其通过构建一种自顶向下、带有侧向连接(shortcut)的层次结构来构建各个尺度的高层语义特征,使得每一层不同尺度的特征图都具有较强的语义信息,这种网络结构,能够在增加较少计算量的前提下融合低分辨率语义信息较强的特征图和高分辨率语义信息较弱但空间信息丰富的特征图。pan其实是在fpn的基础上增加了bottom-up path augemtation的操作,通过自底向上的路径增强特征在较低层中使用准确的定位信息来增强整个特征层次结构,从而缩短了较低层与最高特征之间的信息路径。同时pan还提出了自适应特征池化(adaptive features pooling)和全连接融合(fully-connected fusion)两个模块。其中自适应特征池化可以用于聚合不同层之间的特征,保证特征的完整性和多样性,全连接融合使模型自己选择在预测不同物体时选择不同的特征图,避免了目标尺寸和网络深度的硬性匹配。
[0133]
值得一提的是,本技术实施例的neck部分包括依次连接的fpn和pan,从而使得在neck部分,fpn自顶向下传达强语义特征,pan自底向上传达强定位特征,通过fpn与pan的结合,从不同的主干层对不同的检测层进行参数聚合,从而有效提升了yolov3检测模型的表达能力。
[0134]
需要说明的是,上述yolov3检测模型为训练后的yolov3检测模型。即,在利用yolov3检测模型对图像进行车辆检测前,需要对yolov3检测模型进行训练,直至yolov3检测模型收敛得到训练后的yolov3检测模型。具体的,在对yolov3检测模型进行训练时,可通过ciou损失函数进行回归训练。其中,选择ciou损失函数进行回归训练的原因为:由于l2损失函数仅粗暴地考虑基于欧式距离来进行回归,这种对于不同尺寸的目标是不友好的,针对大目标神经网络计算出来的损失比较大,通过反向传播修正后对大目标的回归效果会更好,对于小目标的回归效果就比较缓慢,还有其没有考虑到预设的锚框(anchor)和真实标签(groundtruth)之间的位置关系,当两者没有重合的时候,无法让神经网络有很好的学习方向,而ciou损失函数能同时考虑回归中的三个重要几何因素:重叠面积、中心点距离和长宽比,能让神经网络快速精准的回归。
[0135]
可以理解的是,为便于yolov3检测模型能快速对图像进行车辆检测,可将其他格
式(如rgb格式)的图像转为yuv格式的图像后,再输入yolov3检测模型进行车辆检测。
[0136]
步骤42,根据多帧图像的车辆检测结果,确定除目标车辆以外的其他车辆在预设违章检测区域内的跟踪轨迹。
[0137]
在本技术的一些实施例中,上述步骤42的具体实现方式包括如下步骤一和步骤二。
[0138]
步骤一,分别针对多帧图像中的每相邻两帧图像,对相邻两帧图像的车辆检测框进行匹配,得到相邻两帧图像的匹配结果,该匹配结果包括相邻两帧图像中属于同一其他车辆的车辆检测框。
[0139]
即,在本技术的一些实施例中,可通过分别确定出每相邻两帧图像中属于同一其他车辆的车辆检测框的方式,确定出同一其他车辆的所有车辆检测框。在具体实施例中,可为每一其他车辆维护一个用于放置该其他车辆的车辆检测框的车辆缓存序列,直至该其他车辆驶离预设违章检测区域,从而便于后续从该其他车辆对应的车辆缓存序列中读取车辆检测框。
[0140]
其中,对相邻两帧图像的车辆检测框进行匹配,得到相邻两帧图像的匹配结果的具体实现方式包括如下步骤:
[0141]
第一步,通过匈牙利匹配算法对相邻两帧图像的车辆检测框进行匹配,得到第一置信度以及第一置信度对应的匹配结果,该第一置信度对应的匹配结果包括相邻两帧图像中属于同一其他车辆的车辆检测框。
[0142]
上述匈牙利匹配算法主要用于匹配轨迹(track)和观测结果(detection),该观测结果即为yolov3检测模型输出的车辆检测结果。其中,由于track和detection是使用高斯分布表示的,因此很适合使用马氏距离来度量两个分布之间的距离。马氏距离又称为协方差距离,是一种有效计算两个未知样本集相似度的方法,所以在这里度量track和detection的匹配程度。
[0143]
上述马氏距离的计算公式为dj表示第j个detection,yi表示第i个track,表示dj与yi的协方差,d1(i,j)表示第j个detection与第i个track之间的马氏距离。是一个指示器,比较的是马氏距离和卡方分布的阈值,t1=9.4877,若马氏距离小于或等于该阈值,则代表成功匹配。需要说明的,由于通过匈牙利匹配算法进行匹配是常用的匹配方式,因此在此,不对匈牙利匹配算法进行匹配的过程进行过多赘述。
[0144]
第二步,通过reid模型对相邻两帧图像的车辆检测框进行匹配,得到第二置信度以及第二置信度对应的匹配结果,该第二置信度对应的匹配结果包括相邻两帧图像中属于同一其他车辆的车辆检测框。
[0145]
上述reid模型主要使用余弦(cosine)距离度量表观特征之间的距离,该余弦距离的计算公式为其中,表示车辆缓存序列t的第j个特征,表示第i个车辆检测结果的第k个车辆检测框的特征,ri表示第i个车辆检测结果,d2(i,j)表示与的余弦距离。
[0146]
需要说明的,由于通过reid模型进行匹配是常用的匹配方式,因此在此,不对reid模型进行匹配的过程进行过多赘述。
[0147]
需要进一步说明的是,常用的reid模型的输入尺寸比较大(如512*512),且最后一层的特征维度比较高(如512),而由于本技术对实时性有一定的要求,因此在本技术的实施例中,可以适当缩小reid模型的输入尺寸(如缩小为128*128),降低最后一层的特征维度(如降低为128),以在满足匹配准确率的前提下大幅减少耗时。
[0148]
第三步,将第一置信度和第二置信度中的较大者对应的匹配结果,作为相邻两帧图像的匹配结果。
[0149]
上述第一置信度主要用于表征匈牙利匹配算法对相邻两帧图像的车辆检测框进行匹配的匹配效果,且第一置信度越大,表明匹配效果越好。类似的,第二置信度主要用于表征reid模型对相邻两帧图像的车辆检测框进行匹配的匹配效果,且第二置信度越大,表明匹配效果越好。
[0150]
可见,在本技术的一些实施例中,通过将匹配效果更好的匹配结果作为相邻两帧图像的匹配结果,从而大大提升了匹配的准确度。
[0151]
步骤二,分别针对图像数据中的每一其他车辆,根据其他车辆的所有车辆检测框的位置信息,生成其他车辆在预设违章检测区域内的跟踪轨迹。
[0152]
在本技术的一些实施例中,在确定出图像数据中属于同一其他车辆的车辆检测框后,可分别针对每一其他车辆,先从该其他车辆对应的车辆缓存序列中读取该其他车辆的车辆检测框,然后再根据读取到的车辆检测框的位置信息,生成该其他车辆在预设违章检测区域内的跟踪轨迹。示例性的,可通过对其他车辆的车辆检测框的位置信息进行拟合的方式,准确、快速的得到该其他车辆在预设违章检测区域内的跟踪轨迹。
[0153]
实施例二
[0154]
对应于上文实施例所述的违章车辆检测方法,如图5所示,本技术的实施例提供了一种违章车辆检测装置,该违章车辆检测装置500包括:
[0155]
获取模块501,用于在目标车辆位于目标区域的情况下,获取目标车辆周边预设违章检测区域的图像数据;
[0156]
第一确定模块502,用于根据图像数据,确定除目标车辆以外的其他车辆在预设违章检测区域内的跟踪轨迹;
[0157]
第二确定模块503,用于根据跟踪轨迹确定其他车辆是否为违章车辆。
[0158]
可选的,图像数据包括多帧图像,第一确定模块502包括:
[0159]
检测子模块,用于对多帧图像中的每帧图像进行车辆检测,得到每帧图像的车辆检测结果;
[0160]
第一确定子模块,用于根据多帧图像的车辆检测结果,确定除目标车辆以外的其他车辆在预设违章检测区域内的跟踪轨迹。
[0161]
可选的,车辆检测结果包括车辆检测框以及车辆检测框的位置信息;相应的,第一确定子模块包括:
[0162]
匹配单元,用于分别针对多帧图像中的每相邻两帧图像,对相邻两帧图像的车辆检测框进行匹配,得到相邻两帧图像的匹配结果;匹配结果包括相邻两帧图像中属于同一其他车辆的车辆检测框;
[0163]
生成单元,用于分别针对图像数据中的每一其他车辆,根据其他车辆的所有车辆检测框的位置信息,生成其他车辆在预设违章检测区域内的跟踪轨迹。
[0164]
可选的,匹配单元包括:
[0165]
第一匹配子单元,用于通过匈牙利匹配算法对相邻两帧图像的车辆检测框进行匹配,得到第一置信度以及第一置信度对应的匹配结果;第一置信度对应的匹配结果包括相邻两帧图像中属于同一其他车辆的车辆检测框;
[0166]
第二匹配子单元,用于通过reid模型对相邻两帧图像的车辆检测框进行匹配,得到第二置信度以及第二置信度对应的匹配结果;第二置信度对应的匹配结果包括相邻两帧图像中属于同一其他车辆的车辆检测框;
[0167]
第三匹配子单元,用于将第一置信度和第二置信度中的较大者对应的匹配结果,作为相邻两帧图像的匹配结果。
[0168]
可选的,检测子模块,具体用于通过yolov3检测模型对多帧图像中的每帧图像进行车辆检测,得到每帧图像的车辆检测结果;
[0169]
yolov3检测模型的主干网络包括依次连接的多个特征提取层,特征提取层包括依次连接的第一cbl模块、第二cbl模块和csp模块,yolov3检测模型的特征融合网络包括依次连接的fpn和pan,多个特征提取层中最后一个特征提取层的csp模块的输出端与fpn的输入端连接。
[0170]
可选的,第二确定模块503包括:
[0171]
第一判断子模块,用于判断跟踪轨迹是否与预设违章警示标识存在交集,并若跟踪轨迹与预设违章警示标识不存在交集,则触发第二确定子模块,若跟踪轨迹与预设违章警示标识存在交集,则触发第二判断子模块;
[0172]
第二确定子模块,用于根据第一判断子模块的触发,确定其他车辆不是违章车辆;
[0173]
第二判断子模块,用于根据第一判断子模块的触发,判断跟踪轨迹的起始位置与终止位置之间的距离是否大于或等于预设距离,并若起始位置与终止位置之间的距离大于或等于预设距离,则触发第三确定子模块,若起始位置与终止位置之间的距离小于预设距离,则触发第四确定子模块;
[0174]
第三确定子模块,用于根据第二判断子模块的触发,确定其他车辆为违章车辆;
[0175]
第四确定子模块,用于根据第二判断子模块的触发,确定其他车辆不是违章车辆。
[0176]
可选的,违章车辆检测装置500还包括:
[0177]
第一处理模块,用于在确定其他车辆为违章车辆的情况下,将确定其他车辆为违章车辆的时间作为其他车辆的违章时间,并获取其他车辆在违章时间的位置信息;
[0178]
第二处理模块,用于将图像数据中违章时间对应的图像帧作为其他车辆的违章图像;
[0179]
输出模块,用于输出用于提示其他车辆为违章车辆的报警信息;报警信息包括违章时间、其他车辆在违章时间的位置信息以及违章图像。
[0180]
可选的,违章车辆检测装置500还包括:
[0181]
发送模块,用于将图像数据发送给主机设备;
[0182]
相应的,输出模块包括:
[0183]
生成子模块,用于根据违章图像的时间戳信息,生成违章图像的标识信息,并将标
识信息发送给主机设备,以使主机设备根据标识信息从接收到的图像数据中确定违章图像;
[0184]
发送子模块,用于将违章时间以及其他车辆在违章时间的位置信息发送给主机设备;
[0185]
输出子模块,用于通过主机设备输出用于提示其他车辆为违章车辆的报警信息。
[0186]
需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本技术方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
[0187]
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本技术的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0188]
如图6所示,本技术的实施例提供了一种终端设备,如图6所示,该实施例的终端设备d10包括:至少一个处理器d100(图6中仅示出一个处理器)、存储器d101、存储在所述存储器d101中并可在所述至少一个处理器d100上运行的计算机程序d102以及摄像头组件d103,所述处理器d100执行所述计算机程序d102时实现上述任意各个方法实施例中的步骤。
[0189]
所称终端设备d10可以是相机、微型计算机、平板等电子设备。该终端设备d10可包括,但不仅限于,处理器d100、存储器d101、计算机程序d102、摄像头组件d103。本领域技术人员可以理解,图6仅仅是终端设备d10的举例,并不构成对终端设备d10的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如还可以包括输入输出设备、网络接入设备等。
[0190]
所称处理器d100可以是中央处理单元(cpu,central processing unit),该处理器d100还可以是其他通用处理器、数字信号处理器(dsp,digital signal processor)、专用集成电路(asic,application specific integrated circuit)、现成可编程门阵列(fpga,field-programmable gate array)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0191]
所述存储器d101在一些实施例中可以是所述终端设备d10的内部存储单元,例如终端设备d10的硬盘或内存。所述存储器d101在另一些实施例中也可以是所述终端设备d10的外部存储设备,例如所述终端设备d10上配备的插接式硬盘,智能存储卡(smc,smart media card),安全数字(sd,secure digital)卡,闪存卡(flash card)等。进一步地,所述存储器d101还可以既包括所述终端设备d10的内部存储单元也包括外部存储设备。所述存储器d101用于存储操作系统、应用程序、引导装载程序(bootloader)、数据以及其他程序等,例如所述计算机程序的程序代码等。所述存储器d101还可以用于暂时地存储已经输出或者将要输出的数据。
[0192]
需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本技术方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
[0193]
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本技术的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0194]
本技术实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现可实现上述各个方法实施例中的步骤。
[0195]
本技术实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行时实现可实现上述各个方法实施例中的步骤。
[0196]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到违章车辆检测装置/终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、电载波信号、电信信号以及软件分发介质。例如u盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
[0197]
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
[0198]
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
[0199]
在本技术所提供的实施例中,应该理解到,所揭露的装置/网络设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/网络设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置
或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
[0200]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0201]
以上所述实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围,均应包含在本技术的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1