本发明涉及车位引导技术领域,尤其涉及一种基于图像处理和模式识别的车位引导方法和系统。
背景技术:
随着汽车的数量增多,随之产生了停车难的问题。很多车辆进入车库后遇到了寻找车位的难题。
目前的车位引导系统常用的采用超声波传感器、地磁探测器等传感器并依据其自身的工作原理,对停车场内的每个停车位的车位状态进行实时监测,统计停车场车位使用状况信息。近年来,也出现了使用摄像头对车位进行单点检测的方法,单点检测方式具有检测数据准确、实时性高等优点,国内的大多数停车场采用这种数据采集方式。
然而上述方式导致成本较高,且施工周期较长。存在对现有停车场改造难度较大,同时不利于后期维护、调试和升级等缺点。
技术实现要素:
本发明提供一种基于图像处理和模式识别的车位引导方法和系统,以克服上述技术问题。
本发明一种基于图像处理和模式识别的车位引导方法,包括:
接收摄像头采集的待检测图像,所述待检测图像包括:标识杆和多个车位,所述标识杆设置在所述多个车位对应矩形区域的四个顶点或对角线的两个点;
识别所述停车场图像中的标识杆,并根据所述标识杆的坐标确定所述标识杆在所述车位图像中的位置;
识别所述标识杆范围内的车辆,并确定所述车辆的个数;
比较所述车辆个数与所述范围内的车位数,若所述车辆的个数等于所述车位数,则确定没有空车位,若所述车辆的个数小于所述车位数,则根据所述车辆的坐标确定空车位的位置。
进一步地,所述识别所述停车场图像中的标识杆,并根据所述标识杆的坐标确定所述标识杆在所述车位图像中的位置之后,还包括:
判断标识杆的个数是否小于2,若是,则向控制中心发送报警信号,若否,则判断所述标识杆的个数是否等于2;
若所述标识杆个数为2,则根据所述标识杆的坐标判断两个标识杆是否处在对角线上,若否,则向控制中心发送报警信号,若是,则确定所述两个标识杆有效;
若所述标识杆个数不为2,则根据所述标识杆的坐标选取处于对角线上的标识杆。
进一步地,识别所述停车场图像中的标识杆,并根据所述标识杆的坐标确定所述标识杆在所述车位图像中的位置,包括:
从数据库包含标识杆的图片中获取标识杆数据集;
搭建卷积神经网络模型,并根据所述数据集训练所述模型;
采用训练后的所述模型和所述待检测图像检测所述标识杆,存储所述标识杆中心点的坐标。
进一步地,所述识别所述标识杆范围内的车辆,包括:
连接所述标识杆的中心点确定车位检测的范围;
从数据库包含车辆的图片中获取车辆数据集,搭建卷积神经网络模型,并根据所述数据集训练所述模型;
采用训练后的所述模型和车位检测范围内的待检测图像检测所述车辆。
进一步地,所述则根据所述车辆的坐标确定空车位的位置,包括:
根据所述对角线上的两个标识杆的坐标确定所述标识杆对应的矩形,根据所述矩形内的车位个数均分所述矩形为若干个车位矩形;
根据所述车辆的坐标与所述车位矩形确定空车位的位置。
进一步地,所述根据所述车辆的坐标与所述车位矩形确定空车位的位置之后,还包括:
将所述空车位的位置发送至引导屏。
本发明还提供一种基于图像处理和模式识别的车位引导系统,包括:
多个采集实时车位图像的摄像头;
若干个标识杆,所述标识杆设置在多个车位对应矩形区域的四个顶点或对角线的两个点;
接收模块,用于接收所述摄像头采集的车位图像;
识别模块,用于识别所述车位图像中的标识杆,根据所述标识杆的坐标确定所述标识杆在所述车位图像中的位置,并识别所述标识杆范围内的车辆,确定所述车辆的个数;
确定模块,用于比较所述车辆个数与所述车位图像中的车位数,若所述车辆的个数等于所述车位数,则确定没有空车位,若所述车辆的个数小于所述车位数,则根据所述车辆的坐标确定空车位的位置。
进一步地,所述识别模块,具体用于:
判断标识杆的个数是否小于2,若是,则向控制中心发送报警信号,若否,则判断所述标识杆的个数是否等于2;
若所述标识杆个数为2,则根据所述标识杆的坐标判断两个标识杆是否处在对角线上,若否,则向控制中心发送报警信号,若是,则确定所述两个标识杆有效;
若所述标识杆个数不为2,则根据所述标识杆的坐标选取处于对角线上的标识杆。
进一步地,所述识别模块,具体用于:
从数据库包含标识杆的图片中获取标识杆数据集;
搭建卷积神经网络模型,并根据所述数据集训练所述模型;
采用训练后的所述模型和所述待检测图像检测所述标识杆,存储所述标识杆中心点的坐标。
进一步地,还包括:
引导屏,用于接收确定模块发送的空车位位置,并根据所述空车位位置指示行车方向。
本发明采用现有的监控摄像头结合标识杆,基于图像处理和模式识别实现了车位引导,降低了系统的成本,利于后期维护、调试和升级。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明基于图像处理和模式识别的车位引导方法流程图;
图2为本发明识别流程图;
图3为本发明基于图像处理和模式识别的车位引导系统示意图;
图4为本发明基于图像处理和模式识别的车位引导系统另一示意图;
图5为本发明基于图像处理和模式识别的车位引导系统标识杆和摄像头结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明基于图像处理和模式识别的车位引导方法流程图,如图1所示,本实施例方法,包括:
步骤101、接收摄像头采集的待检测图像,所述待检测图像包括:标识杆和多个车位,所述标识杆设置在所述多个车位对应矩形区域的四个顶点或所述矩形区域对角线两个顶点;
步骤102、识别所述停车场图像中的标识杆,并根据所述标识杆的坐标确定所述标识杆在所述车位图像中的位置;
步骤103、识别所述标识杆范围内的车辆,并确定所述车辆的个数;
步骤104、比较所述车辆个数与所述区域内的车位数,若所述车辆的个数等于所述车位数,则确定没有空车位,若所述车辆的个数小于所述车位数,则根据所述车辆的坐标确定空车位的位置。
具体来说,摄像头采集多个车位的实时图像,该多个车位对应矩形区域的四个顶点或者该矩形区域对角线两个顶点。首先,在车位图像中识别该些标识杆。然后,识别该些标识杆对应区域内的车辆,并将车辆的个数与预先存储的该区域内的车位数相比较。若识别的车辆个数与该区域内的车位数相等则该区域内车位已满。若识别的车辆个数小于该区域内的车位数则根据识别车辆的坐标确定空车位的位置。
本发明采用现有的监控摄像头结合标识杆,基于图像处理和模式识别实现了车位引导,降低了系统的成本,利于后期维护、调试和升级。
进一步地,所述识别所述停车场图像中的标识杆,并根据所述标识杆的坐标确定所述标识杆在所述车位图像中的位置之后,还包括:
判断标识杆的个数是否小于2,若是,则向控制中心发送报警信号,若否,则判断所述标识杆的个数是否等于2;
若所述标识杆个数为2,则根据所述标识杆的坐标判断两个标识杆是否处在对角线上,若否,则向控制中心发送报警信号,若是,则确定所述两个标识杆有效;
若所述标识杆个数不为2,则根据所述标识杆的坐标选取处于对角线上的标识杆。
具体来说,在实际应用中,标识杆存在损坏的情况,或者摄像头由于外力或者其他因素所造成的位移。上述两种情况一旦发生任一种后,会直接导致无法对车位进行引导。因此,在标识杆在车位图像中的位置确定之后,需对该车位图像中标识杆的个数进一步的判断。当标识杆的个数小于2时,向控制中心发送报警信号,从而对标识杆或者摄像头进行维修。当标识杆的个数等于2时,则判断两个标识杆的位置是否处在对角线上,不在对角线上的两个标识杆为无效标识杆,需要向控制中心发送报警信号。反之,为有效标识杆。当标识干的个数不为2时,则根据该些标识杆的坐标选取其中任一对处于对角线上的标识杆为有效标识杆。
进一步地,识别所述停车场图像中的标识杆,并根据所述标识杆的坐标确定所述标识杆在所述车位图像中的位置,包括:
从数据库包含标识杆的图片中获取标识杆数据集;
搭建卷积神经网络模型,并根据所述数据集训练所述模型;
采用训练后的所述模型和所述待检测图像检测所述标识杆,存储所述标识杆中心点的坐标。
具体来说,本实施例数据来源于停车场若干时间内含有标志杆的录像。
搭建卷积神经网络模型的具体过程为:所述卷积神经网络模型:卷积神经网络模型包含多个卷积结构、5个池化层、三个全连接层、两个relu层以及dropout层;卷积结构包含三个尺度一致的卷积层,卷积结构与池化层交替链接,并将relu层连接于卷积层顶端,在最后一个池化层后连接全连接层,并利用dropout层防止其训练过拟合;卷积层中:每个卷积层的特征映射图都可以使用多个卷积核,通过对前一层得到的特征映射图进行卷积操作,然后组合得出;池化层中:池化层中输出的n个特征图谱与其输入的n个特征图谱相对应。
本实施例中卷积结构包括不同尺度的5层,每层卷积结构要进行三次尺度相同的卷积,卷积核均为3×3。
第一层卷积结构z1=w1*i+b1,其中i是输入图像,大小为224×224,w1代表f1×f1×n1滤波器,卷积核大小f1=3,步长为1,卷积核个数为n1=64个,即输出n1个特征图,*表示卷积操作,b1代表n1维偏差。z1表示本层后输出的特征图。224×224的图像经过本次卷积,生成64个大小为110×110的特征图。
在第一层卷积结构后面有一层池化
第二层卷积结构z2=w2*f1+b2,其中w2代表
在第二层卷积结构后面有一层池化
第三层卷积结构z3=w3*f2+b3,其中w3代表
在第三层卷积结构后面有一层池化
第四层卷积结构z4=w4*f3+b4,其中w4代表
在第四层卷积结构后面有一层池化
第五层卷积结构z5=w5*f4+b5,其中w5代表
最后一层卷积结构处理完成后,再接入到三个全连接层,生成2个大小为4096×1的特征向量和生成1个大小为1000×1的特征向量,这三个全连接层分别用于分类和边框回归。在边框回归层中包含了2个元素,输出用以表示是目标的概率以及不是目标的概率,边框回归层中全连接层最后输出的是目标区域位置。该目标区域位置即标志杆的边框坐标。
初始化后,采用随机梯度下降法对构建的卷积神经网络模型进行迭代训练,每迭代一次检测一次梯度以及损失函数的值,以获得网络模型结构中各权重值w和偏置值b的最优解,迭代多次后得到本次训练的最优卷积神经网络模型。
进一步地,所述识别所述标识杆范围内的车辆,包括:
连接所述标识杆的中心点确定车位检测的范围;
从数据库包含车辆的图片中获取车辆数据集,搭建卷积神经网络模型,并根据所述数据集训练所述模型;
采用训练后的所述模型和车位检测范围内的待检测图像检测所述车辆。
具体来说,本实施例数据集来源于斯坦福大学创建的cars数据集,196类车辆图片,共16185张图片。香港中文大学汤晓鸥团队建立的compcars数据集,包括136727张整车车辆图片以及27618张车辆局部的图片。
搭建卷积神经网络模型的具体过程为:具体来说,所述卷积神经网络模型:卷积神经网络模型包含多个卷积层、3个池化层、两个全连接层、两个relu层以及dropout层;卷积层与池化层交替链接,并将relu层连接于卷积层顶端,在最后一个池化层后连接全连接层,并利用dropout层防止其训练过拟合;卷积层中:每个卷积层的特征映射图都可以使用多个卷积核,通过对前一层得到的特征映射图进行卷积操作,然后组合得出;池化层中:池化层中输出的n个特征图谱与其输入的n个特征图谱相对应。
本实施例中卷积层包括不同尺度的6层,卷积核分别为7×7,5×5,3×3,3×3,3×3,3×3,激活层包括3层,在第每层池化之后。
第一层卷积z1=w1*i+b1,其中i是输入图像,大小为224×224,w1代表f1×f1×n1滤波器,卷积核大小f1=7,步长为2,卷积核个数为n1=96个,即输出n1个特征图,*表示卷积操作,b1代表n1维偏差。z1表示本层后输出的特征图。224×224的图像经过本次卷积,生成96个大小为110×110的特征图。
在第一层卷积后面有一层池化
第二层卷积z2=w2*f1+b2,其中w2代表
在第二层卷积后面有一层池化
第三层卷积z3=w3*f2+b3,其中w3代表
第四层卷积z4=w4*f3+b4,其中w4代表
第五层卷积z5=w5*f4+b5,其中w5代表
第六层卷积z6=w6*f5+b6,其中w5代表
在第六层卷积后面有一层池化
最后一层池化层处理完成后,再接入到两个全连接层,生成1个大小为4096×1的特征向量,这两个全连接层分别用于分类和边框回归。在边框回归层中包含了2个元素,输出用以表示是目标的概率以及不是目标的概率,边框回归层中全连接层最后输出的是目标区域位置。
初始化后,采用随机梯度下降法对构建的卷积神经网络模型进行迭代训练,每迭代一次检测一次梯度以及损失函数的值,以获得网络模型结构中各权重值w和偏置值b的最优解,迭代多次后得到本次训练的最优卷积神经网络模型。
进一步地,所述则根据所述车辆的坐标确定空车位的位置,包括:
根据所述对角线上的两个标识杆的坐标确定所述标识杆对应的矩形,根据所述矩形内的车位个数均分所述矩形为若干个车位矩形;
根据所述车辆的坐标与所述车位矩形确定空车位的位置。
具体来说,若标志杆所围成矩形的四点坐标为
矩形内车位个数为n,则划分出的车位矩形的坐标应为(ax1,ay1)(ax1,by1)(ax2,ay2)(ax2,by2)(axn,ayn)(axn,byn)(bx1,ay1)(bx1,by1)(bx2,ay2)(bx2,by2)…(bxn,ayn)(bxn,yn)
若检测车辆数小于车位数,则根据检测结果求与车辆的坐标
最接近的车位的坐标,即
将最近的车位作为检测到的车辆的车位,将标志记为n,缺少标志的记为第n个空车位。
进一步地,所述根据所述车辆的坐标与所述车位矩形确定空车位的位置之后,还包括:
将所述空车位的位置发送至引导屏。
具体来说,引导屏显示的是附近一片区域内是否存在空车位,即一个引导屏对应多个摄像头下的车位情况,将摄像头做标号,根据停车场的车位地图即可对应出摄像头具体哪部分区域,若此区域内有空车位,显示空车位的数量,并用箭头表示出该引导屏与此摄像头的方位关系。
图3为本发明基于图像处理和模式识别的车位引导系统示意图,如图3所示,本实施例系统,包括:
多个采集实时车位图像的摄像头101;
若干个标识杆102,所述标识杆设置在多个车位对应矩形区域的四个顶点或对角线的两个点;
接收模块103,用于接收所述摄像头采集的车位图像;
识别模块104,用于识别所述车位图像中的标识杆,根据所述标识杆的坐标确定所述标识杆在所述车位图像中的位置,并识别所述标识杆范围内的车辆,确定所述车辆的个数;
确定模块105,用于比较所述车辆个数与所述车位图像中的车位数,若所述车辆的个数等于所述车位数,则确定没有空车位,若所述车辆的个数小于所述车位数,则根据所述车辆的坐标确定空车位的位置。
具体来说,本发明的停车场可以在为室内停车场或者露天停车场,多个摄像头可有不同的安装方式,在室内停车场的摄像头可以直接选用停车场中现有的监控摄像头,其要求需要保证无监视死角。在露天停车场根据环境的不同可有两种安装方式,依附建筑物安装或杆式安装,安装的高度需要保证视角中需要检测的车辆不要出现较大面积的遮挡。
如图5所示,对应每一个摄像头101的视野范围内设置标识杆102,该标识杆用于校准该摄像头的识别区域。可以在该摄像头识别的多个车位对应的矩形区域的对角线方向设置两个标识杆,也可以在该摄像头识别的多个车位对应的矩形区域的四个顶点设置4个标识杆。标识杆设置的位置要保证在摄像头的视野范围内且在摄像头轻微晃动时仍能拍摄到标识杆,标识杆可以采用红黄相间等较为鲜明的颜色,标识杆范围内的车位数为整数。室内停车场中标识杆与室外标识杆同理。多个摄像头要进行标号,且多个摄像头视野可有重复区域,但要确保每个车位至少在一个摄像头对应的标识杆区域内。
进一步地,所述识别模块,具体用于:
判断标识杆的个数是否小于2,若是,则向控制中心发送报警信号,若否,则判断所述标识杆的个数是否等于2;
若所述标识杆个数为2,则根据所述标识杆的坐标判断两个标识杆是否处在对角线上,若否,则向控制中心发送报警信号,若是,则确定所述两个标识杆有效;
若所述标识杆个数不为2,则根据所述标识杆的坐标选取处于对角线上的标识杆。
进一步地,所述识别模块,具体用于:
从数据库包含标识杆的图片中获取标识杆数据集;
搭建卷积神经网络模型,并根据所述数据集训练所述模型;
采用训练后的所述模型和所述待检测图像检测所述标识杆,存储所述标识杆中心点的坐标。
进一步地,如图4所示,本实施例的系统,还包括:
引导屏106,用于接收确定模块发送的空车位位置,并根据所述空车位位置指示行车方向。
本发明系统与图1所示的方法原题相同,此处不再赘述。
与现有技术相比,本发明具有下列有益效果:
(1)低成本多点车位数据探测
多点车位数据探测采用摄像头拍摄停车场的车位占用情况,根据摄像头设置的位置,可以同时拍摄多个车位的情况,相比于单点车位数据探测,多点车位数据探测的好处在于可以将成本成倍降低。
(2)实时车位数据探测
本发明车位检测数据准确、实时性高。目前经试验,处理一帧高清图像的时间消耗在0.04s左右,则在串行的条件下,1s内仍可以处理至少20个摄像头的数据,并行条件下当然可以处理更多摄像头的数据,因此可以保证检测的实时性,同时,在摄像头位置安装符合要求的前提下,多目标同时检测的准确率可以达到99.5%以上。
(3)可用于室外检测
现有技术适应的场景多为室内,当应用在室外环境时,由于存在光线,阴雨等天气情况的影响,会极大削减准确率,本发明不仅可以实现室内停车场的车位引导,还可以实现室外条件下车位的准确检测。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。