一种基于深度学习的异常停车实时检测方法与流程

文档序号:18826587发布日期:2019-10-09 01:49阅读:463来源:国知局
一种基于深度学习的异常停车实时检测方法与流程

本发明涉及深度学习技术领域,具体涉及一种基于深度学习的异常停车实时检测方法。



背景技术:

近年来,随着汽车的普及,城市停车位置出现不足,且伴随着设计不妥以及道路的复杂,停车问题变得及其突出。人们开车上下班、出门旅游,往往因为车位不够或者找到空闲的车位太过于耗时,而导致车主选择随意停放汽车,这种行为不仅会面临交警的罚款,而且会影响道路的畅通。异常停车不仅仅会影响人们的出行效率,甚至更会导致严重的交通事故,严重危害人民的出行安全。因此,准确而实时地进行异常停车检测就显得尤为重要。

现有的一些关于异常停车的检测方法,大多是依赖于传统的图像处理技术,而该方法具有较低的准确率以及较差的鲁棒性,一旦遇到遮挡、天气变化,就会导致检测的准确率大幅度下降;又或者是通过特定的设备来进异常停车检测,这类方法需要较大的人力物力。因此结合现有的交通监控相机以及深度学习进行异常停车检测,具有很强的研究价值和潜在的商业应用。



技术实现要素:

为克服现有技术上检测精度低、检测速度慢的不足,本发明提供了一种基于深度学习的异常停车实时检测方法,用深度卷积神经网络cnn特征进行车辆目标检测,并结合视频时空连续性来准确而快速地进行异常停车检测。

为实现上述发明,采用的技术方案如下:

一种基于深度学习的异常停车实时检测方法,其特征在于,包括如下步骤:

1)相机预置位设置以及相机标定;

2)卷积神经网络模型初始化;

3)获取当前视频帧与视频帧时间;

4)检查相机工作状态;

5)使用卷积神经网络模型对兴趣区域roi进行车辆目标检测;

6)维护静态目标跟踪队列;

7)异常停车检测;

8)异常停车目标上报。

所述的一种基于深度学习的异常停车实时检测方法,其特征在于,步骤1)中,所述的相机预置位为进行异常停车检测时相机所处的固定位置。

所述的一种基于深度学习的异常停车实时检测方法,其特征在于,步骤1)中,所述的相机预置位设置为将摄像头调整到合适的异常停车检测位置,并将当前相机位置设置为预置位。

所述的一种基于深度学习的异常停车实时检测方法,其特征在于,步骤1)中,所述的相机标定为截取相机视频流的一帧图像,在其上进行车道线、兴趣区域roi、异常停车检测区域的标定。

所述的一种基于深度学习的异常停车实时检测方法,其特征在于,步骤2)中,所述的卷积神经网络模型为yolov3,卷积神经网络模型初始化为卷积网络模型加载到gpu显卡中以及权重参数恢复。

所述的一种基于深度学习的异常停车实时检测方法,其特征在于,步骤4)中,所述的检查相机工作状态具体包括以下步骤:

4.1:获取当前相机的位置信息,与预置位比较是否相同,若相同,则进行异常停车检测;否则,将静态目标跟踪队列以及历史异常停车队列重置,并且不进行异常停车检测,直到相机位置恢复到与预置位相同;

4.2:计算当前视频帧时间tcur与前一帧时间tpre的时间间隔tspace,单位为秒,根据公式(1)计算:

tspace=tcur-tpre(1)

若tspace≥3,则将静态目标跟踪队列以及历史异常停车队列重置;否则进行正常的异常停车检测。

所述的一种基于深度学习的异常停车实时检测方法,其特征在于,步骤6)中,所述的维护静态目标跟踪队列包含以下步骤:

6.1:得到当前帧的车辆目标检测结果后,过滤掉不在车道线内以及异常停车检测区域内的车辆;

6.2:基于检测的静态目标匹配:

6.2.1:计算当前帧检测到的车辆目标d和静态目标跟踪队列中目标q的iou和宽高误差ew、eh;iou根据公式(2)计算:

其中,dbox为当前帧的车辆目标d的边界框box,qinit_box为跟踪队列中目标q的初始边界框init_box,∩为求交集,∪为求并集;

宽高误差ew、eh分别根据公式(3)、公式(4)计算:

其中abs()为求绝对值,dw和dh分别为当前帧的车辆目标d边界框box的宽高,qw和qh分别为跟踪队列中目标q边界框box的宽高;

6.2.2:如果iou≥iouthreshold,ew≤ew_threshold,eh≤eh_threshold,则认为d和q是同一辆车且是静止车辆,将q标记为当前帧已检测;否则,则将该车辆目标d加入跟踪队列中,初始box为当前目标d的box,初始图像为当前视频帧,初始时间qinit_time为当前视频帧的时间;其中iouthreshold,ew_threshold,eh_threshold为预先设置的阈值,iouthreshold的取值范围为0~1.0,ew_threshold和eh_threshold的取值要求大于等于0;

6.3:维护静态目标跟踪队列:在静态目标跟踪队列中,若存在跟踪目标q在当前帧中没有检测到、且前errortolerate_frame帧也没有得到更新,则认为该目标已经移动,需要将该跟踪目标q从跟踪队列中移除;其中errortolerate_frame为预先设置的可调值,errortolerate_frame≥1。

所述的一种基于深度学习的异常停车实时检测方法,其特征在于,步骤7)中,所述的异常停车检测包含以下步骤;

7.1:维护历史异常停车队列为将队列中满足条件tspacel≥thresholdparktoleranttime的目标移除;

tspacel根据公式(5)计算:

tspacel=tcur-platest_time(5)

其中tcur为当前视频帧时间,platest_time为历史异常停车目标p的最新检测时间;

7.2:判断目标车辆是否异常停止:跟踪目标q满足during≥thresholdduring以及parkscore≥thresholdpark,则判断该目标车辆q异常停止;其中thresholdduring,thresholdpark为预先设置的阈值,thresholdduring的单位为秒,其取值范围为thresholdduring≥1,thresholdpark的取值范围为0~1.0;parkscore表示异常停车分数;

停留时间during根据公式(6)计算:

during=tcur-qinit_time(6)

其中,tcur为当前视频帧时间,qinit_time为跟踪目标q的初始时间;

parkscore根据公式(7)计算:

其中,trackqueue为静态目标跟踪队列,qarea为跟踪目标q前5个车位内的区域,且该区域qarea限制在跟踪目标q所处车道,|.|为计算区域qarea或者车辆在道路行驶方向上的长度,iqarea(qi)为判断qi是否在区域qarea内的指示函数,若qi在qarea内,则返回1,否则,返回0。

所述的一种基于深度学习的异常停车实时检测方法,其特征在于,步骤8)中,所述的异常停车上报包含以下步骤:

8.1:计算当前帧检测到的异常停车目标d和历史异常停车队列中目标p的iou和宽高误差ew、eh;iou根据公式(8)计算:

其中,dbox为当前帧检测到的异常停车目标d的边界框box,pbox为历史异常停车队列中目标p的边界框box,∩为求交集,∪为求并集;

宽高误差ew、eh分别根据公式(9)、公式(10)计算:

其中abs()为求绝对值,dw和dh分别为当前帧的车辆目标d边界框box的宽高,pw和ph分别为跟踪队列中目标p边界框box的宽高;

8.2:如果iou≥iouthreshold,ew≤ew_threshold,eh≤eh_threshold,则认为当前帧检测到的异常停车目标d已经处于历史异常停车队列中;

8.3:如果当前帧检测到的异常停车目标d不在历史异常停车队列中,则向历史异常停车队列添加该目标信息p,上报时间和最新检测时间为当前时间,边界框box为异常停车目标d的初始边界框init_box,并上报该异常停车目标;否则,更新历史异常停车目标中该目标信息,最新检测时间设置为当前时间,如果历史异常停车队列中该目标满足duringreport≥thresholdparksaveinterval,则上报该异常停车目标,并设置上报时间report_time为当前时间;thresholdparksaveinterval表示违停上报时间间隔,单位为秒,其取值范围为thresholdparksaveinterval≥1;

上报间隔时间duringreport根据公式(11)计算:

duringreport=tcur-preport_time(11)

其中,tcur为当前视频帧时间,preport_time为异常停车目标p的违停上报时间;

8.4:如果需要进行异常停车上报,则在异常停车目标d的初始视频帧和当前视频帧上绘制出检测框,并在视频帧底边添加视频帧时间和地点信息后将两张图像左右排列合并,最后将异常停车信息以及合成图进行上报。

与现有技术相比,本发明具有的主要有益效果为:

本发明提出了一种基于深度学习的异常停车实时检测算法,具有对环境变化较强的鲁棒性,实现了实时的检测效果以及较高的异常停车识别精度,可以极大降低人力资源成本、缓解交通异常情况、减少交通负荷和环境污染、保证交通安全、提高通行效率。

附图说明

图1为本发明方法的步骤流程图;

图2为本发明方法的标定图实例,其中5条实线线段为车道线,较小矩形为异常停车检测区域,较大矩形为兴趣区域roi;

图3为本发明方法的异常停车检测效果图。

具体实施方式

为使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例对本发明进行进一步的详细说明。应当理解,此处所描述的具体实施方式仅仅用以解释本发明,并不限定本发明的保护范围。

如图1-3所示,本实施例提供的基于深度学习的异常停车实时检测方法包括以下步骤:

s1,相机预置位设置以及相机标定。

具体地,将摄像头调整到合适的异常停车检测位置,并将当前相机位置设置为预置位;之后截取相机视频流的一帧图像,在其上进行车道线、兴趣区域roi、异常停车检测区域的标定。

s2,卷积神经网络模型初始化。

具体地,将卷积网络模型加载到gpu显卡中并将权重参数恢复。

s3,获取当前视频帧与视频帧时间。

s4,检查相机工作状态。

具体地,包括以下步骤:

s4.1:获取当前相机的位置信息,与预置位比较是否相同,若相同,则进行异常停车检测;否则,将静态目标跟踪队列以及历史异常停车队列重置,并且不进行异常停车检测,直到相机位置恢复到与预置位相同;

s4.2:计算当前视频帧时间tcur与前一帧时间tpre的时间间隔tspace,单位为秒,根据公式(1)计算:

tspace=tcur-tpre(1)

若tspace≥3,则将静态目标跟踪队列以及历史异常停车队列重置;否则进行正常的异常停车检测。

s5,使用卷积神经网络模型对兴趣区域roi进行车辆目标检测。

s6,维护静态目标跟踪队列。

具体地,包括以下步骤:

s6.1:得到当前帧的车辆目标检测结果后,过滤掉不在车道线内以及异常停车检测区域内的车辆;

s6.2:基于检测的静态目标匹配:

s6.2.1:计算当前帧检测到的车辆目标d和静态目标跟踪队列中目标q的iou和宽高误差ew、eh;iou根据公式(2)计算:

其中,dbox为当前帧的车辆目标d的边界框box,qinit_box为跟踪队列中目标q的初始边界框init_box,∩为求交集,∪为求并集;

宽高误差ew、eh分别根据公式(3)、公式(4)计算:

其中abs()为求绝对值,dw和dh分别为当前帧的车辆目标d边界框box的宽高,qw和qh分别为跟踪队列中目标q边界框box的宽高;

s6.2.2:如果iou≥iouthreshold,ew≤ew_threshold,eh≤eh_threshold,则认为d和q是同一辆车且是静止车辆,将q标记为当前帧已检测;否则,则将该车辆目标d加入跟踪队列中,初始box为当前目标d的box,初始图像为当前视频帧,初始时间qinit_time为当前视频帧的时间;其中iouthreshold,ew_threshold,eh_threshold为预先设置的阈值,iouthreshold的取值范围为0~1.0,ew_threshold和eh_threshold的取值要求大于等于0;在本实施例中,iouthreshold=0.4,ew_threshold=0.5,eh_threshold=0.5;

s6.4:维护静态目标跟踪队列:在静态目标跟踪队列中,若存在跟踪目标q在当前帧中没有检测到、且前errortolerate_frame帧也没有得到更新,则认为该目标已经移动,需要将该跟踪目标q从跟踪队列中移除;其中errortolerate_frame为预先设置的可调值,errortolerate_frame≥1;在本实施例中errortolerate_frame=1。

s7,异常停车检测。

具体地,包含以下步骤:

7.1:维护历史异常停车队列为将队列中满足条件tspacel≥thresholdparktoleranttime的目标移除;

tspacel根据公式(5)计算:

tspacel=tcur-platest_time(5)

其中tcur为当前视频帧时间,platest_time为历史异常停车目标p的最新检测时间;

7.2:判断目标车辆是否异常停止:跟踪目标q满足during≥thresholdduring以及parkscore≥thresholdpark,则判断该目标车辆q异常停止;其中thresholdduring,thresholdpark为预先设置的阈值,thresholdduring的单位为秒,其取值范围为thresholdduring≥1,thresholdpark的取值范围为0~1.0;parkscore表示异常停车分数;

停留时间during根据公式(6)计算:

during=tcur-qinit_time(6)

其中,tcur为当前视频帧时间,qinit_time为跟踪目标q的初始时间;

parkscore根据公式(7)计算:

其中,trackqueue为静态目标跟踪队列,qarea为跟踪目标q前5个车位内的区域,且该区域qarea限制在跟踪目标q所处车道,|.|为计算区域qarea或者车辆在道路行驶方向上的长度,iqarea(qi)为判断qi是否在区域qarea内的指示函数,若qi在qarea内,则返回1,否则,返回0。

s8,异常停车目标上报。

具体地,包含以下步骤:

s8.1:计算当前帧检测到的异常停车目标d和历史异常停车队列中目标p的iou和宽高误差ew、eh;iou根据公式(8)计算:

其中,dbox为当前帧检测到的异常停车目标d的边界框box,pbox为历史异常停车队列中目标p的边界框box,∩为求交集,∪为求并集;

宽高误差ew、eh分别根据公式(9)、公式(10)计算:

其中abs()为求绝对值,dw和dh分别为当前帧的车辆目标d边界框box的宽高,pw和ph分别为跟踪队列中目标p边界框box的宽高;

s8.2:如果iou≥iouthreshold,ew≤ew_threshold,eh≤eh_threshold,则认为当前帧检测到的异常停车目标d已经处于历史异常停车队列中;在本实施例中,iouthreshold=0.4,ew_threshold=0.5,eh_threshold=0.5;

s8.3:如果当前帧检测到的异常停车目标d不在历史异常停车队列中,则向历史异常停车队列添加该目标信息p,上报时间和最新检测时间为当前时间,边界框box为异常停车目标d的初始边界框init_box,并上报该异常停车目标;否则,更新历史异常停车目标中该目标信息,最新检测时间设置为当前时间,如果历史异常停车队列中该目标满足duringreport≥thresholdparksaveinterval,则上报该异常停车目标,并设置上报时间report_time为当前时间;thresholdparksaveinterval表示违停上报时间间隔,单位为秒,其取值范围为thresholdparksaveinterval≥1;在本实施例中thresholdparksaveinterval=300;

上报间隔时间duringreport根据公式(11)计算:

duringreport=tcur-preport_time(11)

其中,tcur为当前视频帧时间,preport_time为异常停车目标p的违停上报时间;

s8.4:如果需要进行异常停车上报,则在异常停车目标d的初始视频帧和当前视频帧上绘制出检测框,并在视频帧底边添加视频帧时间和地点信息后将两张图像左右排列合并,最后将异常停车信息以及合成图进行上报。

以上所述的具体实施方式对本发明的技术方案和有益效果进行了详细说明,应理解的是以上所述仅为本发明的最优选实施例,并不用于限制本发明,凡在本发明的原则范围内所做的任何修改、补充和等同替换等,均应包含在本发明的保护范围之内。

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