1.一种基于视频分析的地下车库乱停检测方法,其特征在于,所述方法包括以下步骤:步骤1:自动巡航机器人通过摄像头获取车库视频;
步骤2:视频每隔一定帧进行截取得到图片集合P={Pi|i=1,2,…,nP};
步骤3:使用YOLOv3模型对每张图片Pi进行车头、车侧、车尾、车牌和停车线的目标检测;
步骤4:若角点矩形区域光照不均,对其进行光照补偿,通过直方图均衡化,对图像进行矫正;
步骤5:采用自适应均值方法对每个区域Rt的子图像进行二值化;
步骤6:对每个区域Rt的子图像进行角点检测;
步骤7:根据角点矩形区域集合A中所有角点区域的角点坐标,将它们按照横坐标排序,从而构成有序的角点坐标集Q={(xt,yt)|t=1,2,…,m};
步骤8:若m=1,则无车位;否则,得车位集合Y={(xiL,yiL,xiR,yiR)|i=1,2,…,nY};
且(xiL,yiL)和(xiR,yiR)在Q中前后相邻(8)其中,其中(xiL,yiL)表示第i个停车位的左角点坐标,(xiR,yiR)表示第i个停车位的右角点坐标,δ0和δ1分别表示事先标定的车位最小宽度和最大宽度,单位为像素;
步骤9:根据边界框集合C={(aj,bj,wj,hj)|j=1,2,…,nC}和车位集合Y={(xiL,yiL,xiR,yiR)|i=1,2,…,nY}进行越线检测;
所述步骤3的过程如下:
步骤3.1:检测出图片Pi的车辆区域,获得边界框集合C={(aj,bj,wj,hj)|j=1,2,…,nC},其中(aj,bj)为边界框左上角点坐标,wj为边界框的宽,hj为边界框的高;
步骤3.2:从C中删除满足公式(1)的边界框元素;
其中x0和x1分别为截取图片的左边界横坐标和右边界横坐标;
步骤3.2:如果检测出车侧,则将该车辆标记为乱停并记录,从C中删除对应的边界框元素;
步骤3.3:如果检测出车尾,则将该车辆标记为乱停,通过深度学习模型检测出乱停车辆中车牌区域,识别车牌信息并记录,从C中删除对应的边界框元素;
步骤3.4:若图片Pi对应的C为空,删除Pi;
步骤3.5:通过深度学习模型检测出停车位角点区域,并将检测到的m个角点矩形区域集合记为A={Rt|t=1,2,…,m},其中,Rt表示第t个角点矩形区域;
所述步骤9的过程如下:
步骤9.1:计算每个边界框Cj的中点横坐标Mj=aj+wj/2,满足公式(9)的Yi为其对应车位,否则将该车辆标记为乱停,记录下车牌信息;
xiL≤Mj≤xiR (9)步骤9.2:对已经匹配好对应车位的车头,进行越线检测,把边界框满足公式(10)或(11)的车辆标记为乱停并记录下车牌信息;
Mj‑xiL≤ξ (10)xiR‑Mj≤ξ (11)其中ξ为越线检测所用的阈值,单位为像素。
2.如权利要求1所述的一种基于视频分析的地下车库乱停检测方法,其特征在于,所述步骤6的过程如下:步骤6.1:用高斯滤波器对待处理的图像进行平滑处理;
步骤6.2:计算每个像素点的梯度幅度和方向;
步骤6.3:采用非极大值抑制方法,找到所有局部梯度极大值同时通过梯度方向找到该像素点的局部最大位置,把不在该极大值处的像素灰度值设置为零;
步骤6.4:采用双阈值Canny法进行边缘轮廓检测,获取车位线轮廓;
步骤6.5:基于车位线轮廓进行霍夫直线变换获取车位线轮廓的线段集B={Li=(ai,bi,ci,di)|i=1,2,…,n},其中,Li表示第i条边缘线段,(ai,bi)和(ci,di)分别表示Li的两个端点;从B中将那些满足 的线段挑选出来并构成横线段集H={Lj=(aj,bj,cj,dj,rj,lj)|j=1,2,…,nH},其中,rj为Lj的类别系数且 lj为Lj的长度,nH表示H中线数的数量;同时从B中将那些满足 的线段挑选出来构成竖线段集V={Lk=(ak,bk,ck,dk,rk,lk)|k=1,2,…,nV},其中,rk为Lk的类别系数且 lk为Lk的长度,nV表示V中线数的数量;
步骤6.6:将满足公式(2)和(3)的线段从H中删除,同时将满足公式(4)和(5)的线段从V中删除;
其中,RH和RV表示线段类别置信度;
步骤6.7:根据步骤6.6得到的V中的线段拟合出一条直线Lv,该直线满足式(6);同样,根据步骤6.6得到的H中的线段拟合出一条直线Lh,该直线满足式(7);
其中,xk1表示直线y=bk与Lv的交点的横坐标,xk2表示直线y=dk与Lv的交点的横坐标,(ak,bk,ck,dk)∈V;yj1表示直线x=aj与Lh的交点的纵坐标,yj2表示直线x=cj与Lh的交点的纵坐标,(aj,bj,cj,dj)∈H;
步骤6.8:计算直线Lv和Lh的交点,即为区域Rt的角点坐标,记为(xt,yt)。