CN109918977B - 确定空闲车位的方法、装置及设备 - Google Patents
确定空闲车位的方法、装置及设备 Download PDFInfo
- Publication number
- CN109918977B CN109918977B CN201711331766.8A CN201711331766A CN109918977B CN 109918977 B CN109918977 B CN 109918977B CN 201711331766 A CN201711331766 A CN 201711331766A CN 109918977 B CN109918977 B CN 109918977B
- Authority
- CN
- China
- Prior art keywords
- parking space
- vehicle
- determining
- coordinate system
- coordinates
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Image Analysis (AREA)
- Traffic Control Systems (AREA)
Abstract
本申请公开了一种确定空闲车位的方法,属于自动驾驶领域的图像识别技术。该方法包括:获取包含至少两个车辆的车辆图像,根据车辆图像确定至少两个车辆中相邻两个车辆各自的二维包围框;根据相邻两个车辆各自的二维包围框确定相邻两个车辆各自的底部外接框上的至少一个特征位置点的位置信息;根据相邻两个车辆的底部外接框上的至少一个特征位置点的位置信息,确定相邻两个车辆之间的空闲车位,只需要车辆图像中存在能够识别出二维包围框的相邻的两个车辆,即可以确定出这两个车辆之间的空闲车位,应用在智能汽车/电动汽车/新能源汽车上能够提高空闲车位的识别效果。
Description
技术领域
本申请涉及图像识别技术领域,特别涉及一种确定空闲车位的方法、装置及设备。
背景技术
自动泊车是自动驾驶领域中重要的一个功能,直接反应出车辆的智能程度。自动泊车功能的实现需要车辆能够自动确定空闲车位所在的位置。
在相关技术中,对空闲车位的自动识别主要通过识别车位线来实现。具体的,车辆中设置的图像采集组件采集车辆周围的图像,车位识别设备对图像采集组件采集到的图像进行识别,以确定图像中的车位线,并根据识别出的车位线确定空闲车位的位置。
然而在实际应用中,车位线的种类多种多样,有印刷线条、嵌草砖、水泥砖等等,而相关技术中的方案只能实现识别出颜色鲜明且清晰的印刷线条的车位线,对于其它类型的车位线则无法识别,导致车位识别的效果较差。
发明内容
为了提高车位的识别效果,本申请的实施例提供了一种确定空闲车位的方法、装置及设备。
第一方面,提供了一种确定空闲车位的方法,所述方法包括:
获取包含至少两个车辆的车辆图像;根据所述车辆图像确定所述至少两个车辆中相邻两个车辆各自的二维包围框,所述二维包围框是所述车辆图像中对应车辆的外接矩形框;根据所述相邻两个车辆各自的二维包围框,确定所述相邻两个车辆各自的底部外接框上的至少一个特征位置点的位置信息,所述底部外接框是对应的车辆在地面上的正投影的外接矩形框,所述特征位置点用于指示对应的底部外接框的预设位置上的点;根据所述相邻两个车辆的底部外接框上的至少一个特征位置点的位置信息,确定所述相邻两个车辆之间的空闲车位。
在该方案中,通过确定车辆图像中的相邻两个车辆的二维包围框,并根据相邻两个车辆的二维包围框确定相邻两个车辆各自的底部外接框中的至少一个特征位置点的位置信息,进而确定该相邻两个车辆之间的空闲车位,只需要车辆图像中存在能够识别出底部外接框的相邻的两个车辆,即可以确定出这两个车辆之间的空闲车位,从而提高空闲车位的识别效果。
可选的,所述至少一个特征位置点包括对应的底部外接框的三个顶点,所述三个顶点用于指示所述车辆图像中可见的底部外接框的三个顶点,所述位置信息用于指示车体坐标系中的坐标,所述根据所述相邻两个车辆各自的二维包围框,确定所述相邻两个车辆各自的底部外接框上的至少一个特征位置点的位置信息,包括:根据所述相邻两个车辆各自的二维包围框,确定所述相邻两个车辆各自的底部外接框的三个顶点在所述车体坐标系中的坐标;
所述根据所述相邻两个车辆的底部外接框上的至少一个特征位置点的位置信息,确定所述相邻两个车辆之间的空闲车位,包括:根据所述相邻两个车辆的底部外接框的三个顶点在所述车体坐标系中的坐标,确定所述相邻两个车辆之间的空闲车位在所述车体坐标系中的坐标。
在该可选方案中,通过相邻两个车辆的二维包围框,识别相邻两个车辆的底部外接框的三个顶点在车体坐标系中的坐标,并进一步确定空闲车位在车体坐标系中的坐标,能够通过车辆图像直接获得空闲车位的准确位置,从而实现对空闲车位的准确定位。
可选的,所述根据所述相邻两个车辆各自的二维包围框,确定所述相邻两个车辆各自的底部外接框的三个顶点在所述车体坐标系中的坐标,包括:
针对所述相邻两个车辆中任一车辆i,通过关键点识别模型确定所述车辆i的二维包围框上的三个关键点的相对位置;所述三个关键点是与所述车辆i的底部外接框的三个顶点对应的三个特征点;所述关键点识别模型是预先根据样本图像进行机器训练得到的识别模型,所述样本图像是预先在二维包围框上标注有三个关键点的图像;根据所述车辆i的二维包围框上的三个关键点的相对位置,计算所述车辆i的二维包围框上的三个关键点在所述车辆图像的坐标系中的二维坐标;根据所述车辆i的二维包围框上的三个关键点在所述车辆图像的坐标系中的二维坐标,计算所述车辆i的底部外接框中的三个顶点在所述车体坐标系中的坐标。
在该可选方案中,预先通过在二维包围框上标注好三个关键点的样本图像进行机器学习训练,以获得关键点识别模型,在应用阶段,通过关键点识别模型对待识别的二维包围框中的图像进行识别,以确定其中的三个关键点,从而实现了对二维包围框上的三个关键点的自动识别,此外,根据底部外接框的三个顶点对应在二维包围框上的三个关键点的相对位置,计算车辆的底部外接框的三个顶点在车体坐标系中的坐标,提供了一种根据二维图像确定车辆的底部外接框在车体坐标系中的坐标的方法。
可选的,所述车辆i的二维包围框上的三个关键点的相对位置包括:第一关键点相对于所述车辆i的二维包围框左下顶点的偏移量与所述车辆i的二维包围框左边线长度之间的第一百分比、第二关键点相对于所述车辆i的二维包围框左下顶点的偏移量与所述车辆i的二维包围框下边线长度之间的第二百分比以及第三关键点相对于所述车辆i的二维包围框右下顶点的偏移量与所述车辆i的二维包围框右边线长度之间的第三百分比,其中,所述第一关键点是所述车辆i的二维包围框左边线上的特征点,所述第二关键点是所述车辆i的二维包围框下边线上的特征点,所述第三关键点是所述车辆i的二维包围框右边线上的特征点;
所述根据所述车辆i的二维包围框上的三个关键点的相对位置,计算所述车辆i的二维包围框上的三个关键点在所述车辆图像的坐标系中的二维坐标,包括:
根据所述第一百分比、所述第二百分比、所述第三百分比以及所述车辆i的二维包围框的四个顶点在所述车辆图像的坐标系中的坐标,计算所述第一关键点、所述第二关键点以及所述第三关键点各自在所述车辆图像的坐标系中的二维坐标。
在该可选方案中,在识别确定车辆的底部外接框在二维包围框上的三个关键点时,通过关键点在二维包围框上相对于二维包围框的顶点的偏移百分比来表示关键点,使得不同远近的车辆的三个关键点的参数区间保持一致,能够很好的应对不同场景中的尺度变化。
可选的,所述根据所述车辆i的二维包围框上的三个关键点在所述车辆图像的坐标系中的二维坐标,计算所述车辆i的底部外接框的三个顶点在所述车体坐标系中的坐标,包括:获取图像采集设备的内参矩阵和外参矩阵,所述图像采集设备是采集所述车辆图像的设备;根据所述车辆i的二维包围框上的三个关键点在所述车辆图像的坐标系中的二维坐标,以及所述内参矩阵和所述外参矩阵,计算所述车辆i的底部外接框的三个顶点在所述车体坐标系中的坐标。
在该可选方案中,根据图像采集设备的内参矩阵和外参矩阵将关键点在车辆图像的坐标系中的二维坐标转化为车辆的底部外接框的三个顶点在车体坐标系中的坐标,实现了从图像中的二维坐标到车体坐标系中的坐标之间的转换。
可选的,所述根据所述相邻两个车辆的底部外接框的三个顶点在所述车体坐标系中的坐标,确定所述相邻两个车辆之间的空闲车位在所述车体坐标系中的坐标,包括:
根据所述相邻两个车辆各自的底部外接框的三个顶点在所述车体坐标系中的坐标,计算所述相邻两个车辆各自的底部外接框的第四个顶点在所述车体坐标系中的坐标;根据所述相邻两个车辆各自的底部外接框的四个顶点在所述车体坐标系中的坐标,计算所述相邻两个车辆各自的底部外接框的中心点在所述车体坐标系中的坐标;根据车位长边方向与中心点连线之间的夹角确定车位类型,所述车位长边方向是根据所述相邻两个车辆中至少一个车辆的底部外接框的长边方向所确定的方向,所述中心点连线为所述相邻两个车辆的底部外接框的中心点之间的连线,所述车位类型包括垂直车位、平行车位或者斜向车位;根据所述车位类型确定车位数量n,所述车位数量n是所述相邻两个车辆之间的车位数量;当所述n为大于或者等于2的整数时,确定所述中心点连线上的n-1个等分点在所述车体坐标系中的坐标,所述n-1个等分点将所述中心点连线划分为n等份;根据所述车位长边方向以及所述n-1个等分点在所述车体坐标系中的坐标,确定所述n-1个等分点各自对应的空闲车位在所述车体坐标系中的坐标。
在该可选方案中,提供了一种结合相邻两个车辆的底部外接框的中心点连线以及车位方向,获得该相邻两个车辆之间的空闲车位在所述车体坐标系中的坐标的方法。
可选的,所述根据所述车位长边方向以及所述n-1个等分点在所述车体坐标系中的坐标,确定所述n-1个等分点各自对应的空闲车位在所述车体坐标系中的坐标,包括:
针对所述n-1个等分点中任意等分点i,从所述等分点i在所述车体坐标系中的坐标开始,沿所述车位长边方向对应的正反两个方向分别移动h/2,获得所述等分点i对应的空闲车位的两条短边的中点在所述车体坐标系中的坐标;从所述等分点i对应的空闲车位的两条短边的中点在所述车体坐标系中的坐标开始,沿所述等分点i对应的空闲车位的短边方向对应的正反两个方向分别移动w/2,获得所述等分点i对应的空闲车位的四个顶点在所述车体坐标系中的坐标;其中,h为预设车位长度,w为预设车位宽度,所述等分点i对应的空闲车位的短边方向与所述车位长边方向垂直;
或者,针对所述n-1个等分点中任意等分点i,从所述等分点i在所述车体坐标系中的坐标开始,沿所述等分点i对应的空闲车位的短边方向对应的正反两个方向分别移动w/2,获得所述等分点i对应的空闲车位的两条长边的中点在所述车体坐标系中的坐标;从所述等分点i对应的空闲车位的两条长边的中点在所述车体坐标系中的坐标开始,沿所述车位长边方向对应的正反两个方向分别移动h/2,获得所述等分点i对应的空闲车位的四个顶点在所述车体坐标系中的坐标;其中,h为预设车位长度,w为预设车位宽度,所述等分点i对应的空闲车位的短边方向与所述车位长边方向垂直。
该可选的方案,提供了两种根据车位长边方向以及等分点i在车体坐标系中的坐标确定空闲车位的四个顶点在车体坐标系中的坐标的方法。
可选的,所述根据车位长边方向与中心点连线之间的夹角确定车位类型,包括:
当所述夹角为90°时,确定所述车位类型为垂直车位;
当所述夹角为0°时,确定所述车位类型为平行车位;
当所述夹角处于(30°,60°)或者(120°,150°)区间内时,确定所述车位类型为斜向车位。
可选的,所述根据所述车位类型计算车位数量n,包括:
当所述车位类型为垂直车位时,n为小于或者等于d/w的最大整数;
当所述车位类型为平行车位时,n为小于或者等于d/h的最大整数;
当所述车位类型为斜向车位时,n为小于或者等于d/(w/sinα)的最大整数;
其中,d为所述中心点连线的长度,w为预设车位宽度,h为预设车位长度,α为所述夹角。
该可选的方案,提供了一种根据车位类型以及相邻两个车辆的底部外接框的中心点两线的长度确定相邻两个车辆之间的空闲车位的数量的方法。
第二方面,提供了一种确定空闲车位的方法,所述方法包括:获取包含所述至少两个车辆的空间感知数据;根据所述空间感知数据获得所述至少两个车辆中相邻两个车辆各自的底部外接框上的至少一个特征位置点的位置信息,所述底部外接框是对应车辆在地面上的正投影的外接矩形框,所述特征位置点用于指示底部外接框的预设位置上的点;根据所述相邻两个车辆的底部外接框上的至少一个特征位置点的位置信息,确定所述相邻两个车辆之间的空闲车位。
在该方案中,通过识别空间感知数据中的相邻两个车辆的底部外接框上的至少一个特征位置点的位置信息,并根据底部外接框上的至少一个特征位置点的位置信息来确定相邻两个车辆之间的空闲车位,只需要空间感知数据中存在能够识别出底部外接框的相邻的两个车辆,即可以确定出这两个车辆之间的空闲车位,从而提高空闲车位的识别效果。
第三方面,提供了一种模型训练方法,所述方法包括:获取样本图像,所述样本图像是预先在二维包围框上标注有三个关键点的图像,所述二维包围框是车辆的外接矩形框,所述三个关键点是所述车辆的底部外接框中的三个顶点对应在所述样本图像中的三个特征点,所述三个顶点用于指示所述样本图像中可见的底部外接框的三个顶点,且所述三个关键点分别处于所述二维包围框的左边线、下边线以及右边线上,所述底部外接框是对应车辆在地面上的正投影的外接矩形框;根据所述样本图像进行模型训练,得到关键点识别模型,所述关键点识别模型用于识别输入图像中的待识别车辆的底部外接框中的三个顶点对应在所述输入图像中的三个关键点的相对位置,所述输入图像是所述待识别车辆的二维包围框中的图像。
在该方案中,预先通过在二维包围框上标注好三个关键点的样本图像进行机器学习训练,以获得关键点识别模型,以便在应用阶段,通过关键点识别模型对待识别的二维包围框中的图像进行识别,以确定其中的三个关键点,从而实现了对二维包围框上的三个关键点的自动识别。
第四方面,提供了一种确定空闲车位的装置,该装置具有实现上述第一方面以及第一方面的可选的实现方案所提供的确定空闲车位的方法的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多于一个与上述功能相对应的单元。
第五方面,提供了一种确定空闲车位的装置,该装置具有实现上述第二方面所提供的确定空闲车位的方法的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多于一个与上述功能相对应的单元。
第六方面,提供了一种模型训练装置,该装置具有实现上述第三方面所提供的模型训练方法的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多于一个与上述功能相对应的单元。
第七方面,提供了一种车位确定设备,该车位确定设备包括:处理器和存储器,所述存储器用于存储可编程指令,所述处理器用于调用所述储存器上存储的可编程指令以执行如上述第一方面以及第一方面的可选的实现方案所述的确定空闲车位的方法。
第八方面,提供了一种车位确定设备,该车位确定设备包括:处理器和存储器,所述存储器用于存储可编程指令,所述处理器用于调用所述储存器上存储的可编程指令以执行如上述第二方面所述的确定空闲车位的方法。
第九方面,提供了一种车位确定设备,该车位确定设备包括:处理器和存储器,所述存储器用于存储可编程指令,所述处理器用于调用所述储存器上存储的可编程指令以执行如上述第三方面所述的模型训练方法。
第十方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中包含可编程指令,计算机执行所述可编程指令以实现如上述第一方面以及第一方面的可选的实现方案所述的确定空闲车位的方法。
第十一方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中包含可编程指令,计算机执行所述可编程指令以实现如上述第二方面所述的确定空闲车位的方法。
第十二方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中包含可编程指令,计算机执行所述可编程指令以实现如上述第三方面所述的模型确定方法。
第十三方面,提供了一种计算机程序,所述计算机程序中包含至少一个可编程指令,当该计算机程序运行在计算机中时,计算机可以通过执行所述至少一个可编程指令以实现如上述第一方面以及第一方面的可选的实现方案所述的确定空闲车位的方法。
第十四方面,提供了一种计算机程序,所述计算机程序中包含至少一个可编程指令,当该计算机程序运行在计算机中时,计算机可以通过执行所述至少一个可编程指令以实现如上述第二方面所述的确定空闲车位的方法。
第十五方面,提供了一种计算机程序,所述计算机程序中包含至少一个可编程指令,当该计算机程序运行在计算机中时,计算机可以通过执行所述至少一个可编程指令以实现如上述第三方面所述的模型确定方法。
附图说明
图1是本申请实施例所涉及的确定空闲车位的***的架构图;
图2是本申请一个示例性实施例提供的确定空闲车位的方法的流程图;
图3是图2所示实施例涉及的一种图像检测示意图;
图4是图2所示实施例涉及的一种二维框检测示意图;
图5是图2所示实施例涉及的一种可见关键点示意图;
图6是图2所示实施例涉及的一种模型训练方法的方法流程图;
图7是图2所示实施例涉及的一种第二深度神经网络回归关键点归一化数值的原理图;
图8是图2所示实施例涉及的卷积及预测原理图;
图9是图2所示实施例涉及的一种相机成像原理图;
图10是图2所示实施例涉及的一种车辆底部外接框示意图;
图11是图2所示实施例涉及的识别空闲车位的流程图;
图12是图2所示实施例涉及的空闲车位类型识别流程图;
图13是图2所示实施例涉及的一种车位类型示意图;
图14是图2所示实施例涉及的空闲车位位置识别流程图;
图15是图2所示实施例涉及的相邻两个车辆之间不存在空闲车位的示意图;
图16是图2所示实施例涉及的相邻两个车辆之间存在空闲车位的示意图;
图17是图2所示实施例涉及的一种确定定点坐标的示意图;
图18是本申请的一个示例性实施例提供的确定空闲车位的方法的流程图;
图19是本申请一个示例性实施例提供的车位确定设备的结构示意图;
图20是本申请一个示例性实施例提供的模型训练设备的结构示意图;
图21是本申请的一个示例性实施例提供的一种确定空闲车位的装置的结构图;
图22是本申请的一个示例性实施例提供的一种模型训练装置的结构图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
图1是本申请实施例所涉及的确定空闲车位的***的架构图。如图1所示,该确定空闲车位的***可以包括数据采集设备110以及车位确定设备120。
其中,数据采集设备110可以是采集二维图像的摄像头设备;或者,数据采集设备110也可以是采集空间感知数据的设备,比如,该数据采集设备110可以是采集雷达点云数据的雷达探测设备,或者,该数据采集设备110也可以是采集激光点云数据的激光探测设备等。
车位确定设备120可以是具有数据识别处理能力的计算机设备。
上述数据采集设备110可以设置在车辆中,并采集车辆周围的车辆图像,并将采集到的车辆数据信息发送给车位确定设备120,车位确定设备120通过对车辆数据信息进行识别,以确定车辆数据信息中是否存在空闲车位,以及空闲车位的空间方位信息(比如车位的顶点在车体坐标系中的坐标等信息),以便后续进行自动泊车等应用。
该确定空闲车位的***可以独立搭载于车辆中,比如,上述数据采集设备110以及车位确定设备120都设置在车辆中,数据采集设备110和车位确定设备120之间通过有线网络进行通信。
或者,该确定空闲车位的***也可以分别部署在车辆和网络服务器中,比如,上述数据采集设备110可以设置在车辆中,而上述车位确定设备120可以设置在网络服务器中,数据采集设备110和车位确定设备120之间通过无线网络进行通信。
在实际的停车场或者路边停车位中,为了便于管理,车位一般都是按照一定的规律集中设置的,比如,停车场中通常相对车道垂直或者斜向连续设置若干个车位,且该若干个车位之间相互平行,而在路边设置停车位时,通常相对于车道平行的连续设置若干个车位,且该若干个车位之间首尾相接。因此,对于停放状态的车辆而言,当相邻两个车辆之间的距离足够时,该相邻两个车辆之间有很大的可能存在空闲车位。
基于上述原理,本申请实施例所示的方案,可以通过相邻两个车辆之间的距离关系,确定出两个车辆之间是否存在空闲的车位、存在多少空闲车位以及每个空闲车位的位置信息。具体比如,车位确定设备120在对车辆数据信息进行识别以确定空闲车位时,可以获取包含至少两个车辆的车辆数据信息,并根据车辆数据信息获得至少两个车辆中相邻两个车辆各自的底部外接框上的至少一个特征位置点的位置信息,并根据相邻两个车辆的底部外接框上的至少一个特征位置点的位置信息,确定该相邻两个车辆之间的空闲车位。通过该方法,只要采集到的车辆数据信息中包含可以识别出底部外接框的至少两个车辆,即可以识别出这两个车辆之间的空闲车位,不需要识别地面上的车位线,甚至不需要地面上存在车位线,对空闲车位的识别准确率更高;另外,本申请实施例所示的方法,只需要采集到包含至少两个相邻车辆的二维图像或者空间感知数据,即可以实现空闲车位的识别,从而可以识别出远距离的车辆之间的空闲车位,对空闲车位的识别距离远,识别效果更好。
在本申请实施例中,上述车位确定设备120可以根据二维图像进行空闲车位的识别,也可以通过空间感知数据进行空闲车位的识别。下面图2所示的实施例将以根据二维图像进行空闲车位的识别为例进行介绍。
请参考图2,其示出了本申请一个示例性实施例提供的确定空闲车位的方法的流程图。该方法可以用于图1所示***的车位确定设备120中。如图2所示,该确定空闲车位的方法可以包括:
步骤201,获取包含至少两个车辆的车辆图像。
在本申请实施例中,数据采集设备可以采集车辆周围的图像,并将车辆周围的图像发送给车位确定设备,车位确定设备接收到图像采集设备采集到的图像之后,对接收到的图像进行初步识别,以确定该图像中是否包含两个或者两个以上的车辆,若是,则确定获取到该车辆图像,否则,认为未获取到车辆图像。
步骤202,根据该车辆图像确定该至少两个车辆中相邻两个车辆各自的二维包围框,该二维包围框是该车辆图像中对应车辆的外接矩形框。
图像中的物体的外接矩形框是指四条边分别与物体在图像中最上像素点、最下像素点、最左像素点以及最右像素点相接的矩形框,外接矩形框通常可以用来表示物体在图像中的位置。在本申请实施例中,通过图像中的车辆的外接矩形框(即二维包围框)来表示车辆在图像中的位置。
在本申请实施例中,可以通过包围框识别模型(比如,该包围框识别模型可以是第一深度神经网络)对该车辆图像进行图像识别,以识别车辆图像中的至少两个车辆中,相邻两个车辆的二维包围框,该包围框识别模型可以是预先根据第一样本图像进行机器训练得到的识别模型,该样本图像可以是预先标注有各个车辆的二维包围框的图像。
上述包围框识别模型可以通过模型训练设备进行机器训练获得,其中,该模型训练设备与该车位确定设备可以是不同的两个计算机设备,比如,该模型训练设备是网络侧的服务器,而车位确定设备是车载设备,或者,该模型训练设备与该车位确定设备也可以是同一个设备,比如,该模型训练设备和车位确定设备实现在网络侧的同一个服务器中。
比如,在车位确定设备对车辆图像进行图像识别之前,开发人员可以收集若干个包含车辆的第一样本图像,并在第一样本图像中标注好各个车辆的二维包围框,之后将标注好二维包围框的第一样本图像输入模型训练设备,由模型训练设备根据标注好二维包围框的第一样本图像训练得到上述包围框识别模型,后续车位确定设备对车辆图像进行图像识别时,根据模型训练设备训练得到的包围框识别模型进行图像识别,以获得车辆图像包含的至少两个车辆中,相邻两个车辆各自的二维包围框。
比如,请参考图3,其示出了本申请实施例涉及的一种图像检测示意图,如图3所示,第一深度神经网络接收到输入图片后,首先对输入图片进行特征提取,获得小尺寸的特征图(比如可以通过多层卷积的方式提取小尺寸的特征图),在根据小尺寸的特征图进行二维包围框检测。
其中,第一深度神经网络可以通过基准框来检测二维包围框,比如,请参考图4,其示出了本申请实施例涉及的一种二维框检测示意图,如图4所示,第一深度神经网络在小尺寸的特征图的每个像素位置预设k个基准包围框,并通过预测相对于各个基准包围框的位置偏差来确定图像中真实的二维包围框的位置。其中,图4中经由中间层输出的4k个位置数据表示相对个k个基准框的位置偏差,另外经由中间层输出的2k个类别数据表示对应基准包围框区域的类别(比如背景或者含有物体),第一深度神经网络通过预先设定的阈值来选择含有物体的基准框,然后根据对应的偏差值得到最终的二维包围框的识别结果。
可选的,上述用于识别车辆的二维包围框的第一深度神经网络可以是快速区域卷积神经网络(Faster Region Convolutional Neural Networks,Faster RCNN)网络、单箱探测器(Single Shot MultiBox Detector,SSD)网络或者统一实时对象检测(Unified,Real-Time Object Detection)网络等,其中,统一实时对象检测网络也称为YOLO(全称YouOnly Look Once)网络。本申请实施例对于第一深度神经网络的类型不做限定。
车位识别设备执行步骤202获得相邻两个车辆各自的二维包围框之后,即可以根据相邻两个车辆各自的二维包围框,确定相邻两个车辆各自的底部外接框上的至少一个特征位置点的位置信息,该底部外接框是对应的车辆在地面上的正投影的外接矩形框,该特征位置点是该底部外接框的预设位置上的点,根据该相邻两个车辆的底部外接框上的至少一个特征位置点的位置信息,即可以确定该相邻两个车辆之间的空闲车位。
具体比如,以至少一个特征位置点包括对应的底部外接框的三个顶点,该三个顶点用于指示车辆图像中可见的底部外接框的三个顶点,且该位置信息用于指示车体坐标系中的坐标为例,在根据相邻两个车辆各自的二维包围框,确定相邻两个车辆各自的底部外接框上的至少一个特征位置点的位置信息时,车位识别设备可以根据相邻两个车辆各自的二维包围框,确定相邻两个车辆各自的底部外接框的三个顶点在车体坐标系中的坐标。该确定相邻两个车辆各自的底部外接框的三个顶点在车体坐标系中的坐标的过程参考后续步骤203至步骤204。
步骤203,针对相邻两个车辆中的任一车辆i,确定该车辆i的二维包围框上的三个关键点在该车辆图像的坐标系中的二维坐标,该三个关键点是与该车辆i的底部外接框的三个顶点对应的三个特征点。
车辆的底部外接框为矩形框,该矩形框的四个顶点即为车辆底部外接框的4个特征位置点。对于一个可检测出二维包围框的车辆,该车辆的底部外接框的4个顶点中,对应在车辆图像中可见的特征点通常有3个,该车辆的底部外接框中的3个顶点对应在车辆图像中的特征点可以称为该车辆对应的3个关键点,且这3个可见的关键点分别处于二维包围框的左、下、右边缘上。比如,请参考图5,其示出了本申请实施例涉及的一种可见关键点示意图,如图5所示,车辆的底部外接框51对应在车辆图像中的三个可见的关键点分别为P1、P2和P3,其中,关键点P1位于车辆二维包围框52的左边缘,关键点P2位于车辆二维包围框52的下边缘,关键点P3位于车辆二维包围框52的右边缘,车辆的底部外接框51中的第四个顶点对应的关键点P4处于被遮挡状态,在车辆的二维包围框所包围的图像区域中不可见。
可选的,对于相邻两个车辆中的任一车辆i,在确定车辆i的二维包围框上的三个关键点在该车辆图像的坐标系中的二维坐标时,车位识别设备可以通过关键点识别模型确定该车辆i的二维包围框上的三个关键点的相对位置,并根据该车辆i的二维包围框上的三个关键点的相对位置,计算该车辆i的二维包围框上的三个关键点在该车辆图像的坐标系中的二维坐标。
其中,该关键点识别模型是预先按照第二样本图像进行机器训练得到的识别模型,该第二样本图像是预先在二维包围框上标注有三个关键点的图像。比如,在本发明实施例中,该关键点识别模型可以是第二深度神经网络。
请参考图6其示出了本发明实施例涉及的一种模型训练方法的方法流程图,如图6所示,该模型训练方法可以包括如下步骤:
步骤61,获取第二样本图像。
其中,在获取第二样本图像时,模型训练设备可以接收开发人员输入的该第二样本图像。
步骤62,根据该第二样本图像进行模型训练,得到关键点识别模型。
其中,该关键点识别模型用于识别输入图像中的待识别车辆的底部外接框中的三个顶点对应在输入图像中的三个关键点的相对位置,该输入图像是待识别车辆的二维包围框中的图像。
比如,在车位确定设备对车辆的二维包围框中的图像进行识别之前,开发人员可以收集若干个车辆的二维包围框的样本图像,并在若干个车辆的二维包围框的样本图像中分别标注好二维包围框上的三个关键点,获得标注好三个关键点的第二样本图像,之后将标注好关键点的第二样本图像输入模型训练设备,由模型训练设备根据第二样本图像训练获得上述关键点识别模型,后续车位确定设备对车辆的二维包围框中的图像进行识别时,根据模型训练设备训练得到的关键点识别模型进行图像识别,即车位确定设备将车辆的二维包围框所包围的图像输入关键点识别模型,由关键点识别模型输出该车辆的二维包围框上的三个关键点的相对位置。
在本发明实施例中,上述第二样本图像可以是在第一样本图像中标注出的二维包围框中的图像,即开发人员收集若干个包含车辆的第一样本图像,并在第一样本图像中标注好各个车辆的二维包围框之后,还进一步在标注的二维包围框上标注三个关键点,将标注好三个关键点的二维包围框所包围的图像作为第二样本图像。或者,上述第二样本图像也可以是从第一样本图像之外的其它图像中截取出的,该其它图像中的车辆的二维包围框中的图像。
车位确定设备识别获得车辆的二维包围框上的三个关键点的相对位置后,即可以结合车辆的二维包围框的四个顶点在车辆图像的坐标系中的二维坐标,计算出车辆的二维包围框上的三个关键点在车辆图像的坐标系中的二维坐标。
比如,以上述车辆的二维包围框上的三个关键点的相对位置是该三个关键点与二维包围框的四个顶点之间的相对位置为例,车位确定设备通过关键点识别模型获得该三个关键点与二维包围框的四个顶点之间的相对位置后,结合该二维包围框的四个顶点在车辆图像的坐标系中的二维坐标,按照几何原理即可以计算出该三个关键点在车辆图像的坐标系中的二维坐标。
可选的,对于相邻两个车辆中的任一车辆i,在通过关键点识别模型确定车辆i的二维包围框上的三个关键点的相对位置时,可以通过关键点识别模型对该车辆i的二维包围框中的图像进行图像识别,获得第一关键点相对于该车辆i的二维包围框左下顶点的偏移量与该车辆i的二维包围框左边线长度之间的第一百分比、第二关键点相对于该车辆i的二维包围框左下顶点的偏移量与该车辆i的二维包围框下边线长度之间的第二百分比以及第三关键点相对于该车辆i的二维包围框右下顶点的偏移量与该车辆i的二维包围框右边线长度之间的第三百分比。在根据车辆i的二维包围框上的三个关键点的相对位置,计算车辆i的二维包围框上的三个关键点在车辆图像的坐标系中的二维坐标时,车位识别设备根据该第一百分比、该第二百分比、该第三百分比以及该车辆i的二维包围框的四个顶点在该车辆图像的坐标系中的坐标,计算该第一关键点、该第二关键点以及该第三关键点各自在该车辆图像的坐标系中的二维坐标。其中,第一关键点是车辆i的二维包围框左边线上的特征点,第二关键点是所述车辆i的二维包围框下边线上的特征点,第三关键点是所述车辆i的二维包围框右边线上的特征点。
可选的,在本发明实施例中,上述通过关键点识别模型获得的第一百分比、第二百分比以及第三百分比,即为该车辆的二维包围框上的三个关键点在该车辆图像的坐标系中的相对位置。
在本申请实施例中,以通过第二深度神经网络确定车辆的二维包围框上的三个关键点为例,该第二深度神经网络的输入为车辆的二维包围框中的图像,如图5所示,第二深度神经网络需要预测的值分别为py1,px2以及py3,其中,py1是以车辆的二维包围框左边线的长度为1,对P1点到二维包围框左下顶点之间的距离进行归一化的结果,px2是以车辆的二维包围框下边线的长度为1,对P2点到二维包围框左下顶点之间的距离进行归一化的结果,py3是以车辆的二维包围框右边线的长度为1,对P3点到二维包围框右下顶点之间的距离的进行归一化的结果,对上述三个数值进行百分比化即可以得到上述第一百分比、第二百分比以及第三百分比。
请参考图7,其示出了本申请实施例涉及的一种第二深度神经网络回归关键点归一化数值的原理图。如图7所示,第二深度神经网络中的特征提取子网络对车辆的二维包围框中的图像进行特征提取,第二深度神经网络根据提取到的特征输出预测的值分别为py1,px2,py3,代表各个关键点与二维包围框对应顶点的归一化距离。
以该第二深度神经网络为卷积神经网络为例,上述检测过程可以参考图8所示的卷积及预测原理图,在图8中,通过对车辆的二维包围框中的图像进行特征图提取,并对提取到的特征图进行若干次卷积操作,以不断减小特征图尺寸,最后通过全连接层直接输出上述3个预测值。
确定上述三个预测值之后,即可以根据二维包围框的四个顶点在车辆图像的坐标系中的坐标,来确定车辆的二维包围框上的三个关键点在车辆图像的坐标系中的二维坐标。
上述py1,px2,py3取值范围在(0,1)之间。以P2关键点为例,若px2=0,则代表P2与车辆的二维包围框的左下顶点重合,若px2=1,则代表P2与车辆的二维包围框右下顶点重合。与直接预测三个关键点与二维包围框四个顶点的像素距离不同,本申请所示方案中预测的归一化的结果,能够很好的应对不同场景中的尺度变化,即对于不同远近的车辆,其三个关键点各自对应的参数取值范围将保持一致。
步骤204,根据该车辆i的二维包围框上的三个关键点在该车辆图像的坐标系中的二维坐标,计算该车辆i的底部外接框的三个顶点在车体坐标系中的坐标。
在本申请实施例中,可以结合采集车辆图像的图像采集设备的标定数据,以及上述三个关键点在车辆图像的坐标系中的二维坐标,确定上述三个关键点分别对应的底部外接框的三个顶点在车体坐标系中的坐标。
可选的,上述标定数据可以是图像采集设备的内参矩阵和外参矩阵,对于相邻两个车辆中的任一车辆i,车位识别设备可以获取图像采集设备的内参矩阵和外参矩阵,并根据车辆i的二维包围框上的三个关键点在该车辆图像的坐标系中的二维坐标,以及该内参矩阵和该外参矩阵,计算该车辆i的底部外接框的三个顶点在车体坐标系中的坐标。
其中,上述车体坐标系中的坐标可以是二维坐标,也可以是三维坐标。比如,当车辆处于水平地面上时,车辆的底部外接框在车体坐标系中的Z轴(即垂直于水平面的坐标轴)坐标始终为0,此时,在确定车辆i的底部外接框的三个顶点在车体坐标系中的坐标时,只需要考虑水平面内的X轴坐标和Y轴坐标即可。而当车辆处于斜坡或者高低不平的地面上时,车辆的底部外接框在车体坐标系中的Z轴坐标可能不为0,此时,在确定车辆i的底部外接框的三个顶点在车体坐标系中的坐标时,除了需要考虑水平面内的X轴坐标和Y轴坐标之外,还需要考虑Z轴的坐标。
其中,上述图像采集设备的内参矩阵和外参矩阵可以预先标定并存储在车位识别设备中,在获取图像采集设备的内参矩阵和外参矩阵时,车位识别设备可以直接从本地读取该内参矩阵和外参矩阵;或者,该图像采集设备的内参矩阵和外参矩阵也可以预先标定并存储在图像采集设备中,车位识别设备可以向图像采集设备请求获取该内参矩阵和外参矩阵。
请参考图9,其示出了本申请实施例涉及的一种相机成像原理图。图中阴影面代表车辆图像的坐标系所在的平面,x,y坐标轴为车辆图像的坐标系中的坐标轴,识别出来的关键点的坐标是车辆图像的坐标系中的坐标(u,v)。该关键点对应在车体坐标系中的点为图9中的P点(即上述P1、P2或者P3),其在车体坐标系中的坐标为(X,Y,Z)。通过上述第二深度神经网络识别出底部外接框上的三个关键点的二维坐标(u,v)之后,可以利用图像采集设备的成像公式解算出该关键点在车体坐标系下的坐标(X,Y,Z)。
其中,成像公式为:
上述成像公式中,M1、M2分别为图像采集设备的内参矩阵和外参矩阵,这两个矩阵可通过对图像采集设备的预先标定得到。由于底部外接框是车辆在地面上的投影区域的包围框,当车辆处于水平地面上时,对于所有底部外接框上的关键点,均有Z=0。因此上述成像公式中u,v,M1,M2以及Z均为已知量,只有s,X,Y三个未知量,而上述成像公式可联立3个方程,即上述三个未知的变量s,X,Y有唯一解。
步骤205,根据相邻两个车辆的底部外接框的三个顶点在车体坐标系中的坐标,确定相邻两个车辆之间的空闲车位在车体坐标系中的坐标。
其中,车位识别设备可以根据该相邻两个车辆各自的底部外接框的三个顶点在该车体坐标系中的坐标,计算该相邻两个车辆各自的底部外接框的第四个顶点在该车体坐标系中的坐标;根据该相邻两个车辆各自的底部外接框的四个顶点在该车体坐标系中的坐标,计算该相邻两个车辆各自的底部外接框的中心点在该车体坐标系中的坐标;根据车位长边方向与中心点连线之间的夹角确定车位类型,该车位长边方向是根据该相邻两个车辆中至少一个车辆的底部外接框的长边方向所确定的方向,该中心点连线为该相邻两个车辆的底部外接框的中心点之间的连线,该车位类型包括垂直车位、平行车位或者斜向车位;根据该车位类型确定车位数量n,该车位数量n是该相邻两个车辆之间的车位数量;当该n为大于或者等于2的整数时,确定该中心点连线上的n-1个等分点在该车体坐标系中的坐标,该n-1个等分点将该中心点连线划分为n等份;根据该车位长边方向以及该n-1个等分点在该车体坐标系中的坐标,确定该n-1个等分点各自对应的空闲车位在该车体坐标系中的坐标。
以相邻两个车辆中的任一车辆i为例,在获得车辆i的底部外接框的三个顶点在车体坐标系中的坐标后,车位识别设备可以根据该车辆i的底部外接框的三个顶点在车体坐标系中的坐标,计算该车辆i的底部外接框中的第四个顶点在车体坐标系中的坐标。
图10示出了本申请实施例涉及的一种车辆底部外接框示意图,其中,车辆的底部外接框是一个矩形,对应四个顶点的位置分布如图10所示,其中P1、P2、P3的坐标已知,C点为底部外接框的中心点,P4的坐标未知,设P1在车体坐标系中的坐标为(X1,Y1,Z1),P2在车体坐标系中的坐标为(X2,Y2,Z2),P3在车体坐标系中的坐标为(X3,Y3,Z3),P4在车体坐标系中的坐标为(X4,Y4,Z4),C点在车体坐标系中的坐标为(XC,YC,ZC)。
矩形的中心点C坐标可通过P1坐标和P3坐标来计算:
同样地,中心点C坐标也可通过P2和P4来计算:
联立上述两个公式即可基于下述公式计算出P4点在车体坐标系中的坐标。
至此,图像中车辆底部外接框的4个顶点在车体坐标系中的坐标全部成功解算出来。
其中,上述车位长边方向是指车位中两条较长的边的方向,车位中心点是指一个车位的几何中心点。
其中,上述垂直车位是指车位长边方向垂直于车道的车位,平行车位是指车位长边方向平行于车道的车位,而斜向车位是指车位长边方向与车道方向介于平行和垂直之间,通常情况下,斜向车位的车位长边方向与车道方向的夹角处于(30°,60°)或者(120°,150°)区间内。
在实际应用中,对于不同类型的车位,相邻两个车位的中心点之间的距离也不相同,比如,当相邻两个车位是垂直车位时,这两个垂直车位之间共享一条长边,此时,该相邻两个车位的中心点之间的距离为一个车位宽度;再比如,当相邻两个车位是平行车位时,这两个平行车位之间共享一条短边,此时,该相邻两个车位的中心点之间的距离为一个车位长度;再比如,当相邻两个车位是斜向车位时,这两个斜向车位的中心点之间的距离介于一个车位长度和一个车位宽度之间,具体数值取决于斜向车位与车道之间的夹角的大小。因此,在确定相邻两个车辆的底部外接框的四个顶点在车体坐标系中的坐标之后,在计算出两个车辆的底部外接框的中心点之间的距离时,需要结合车位类型来确定该相邻两个车辆的底部外接框的中心点连线上可以划分出几个等分点,当能够划分出的等分点的数量大于或者等于1(即上述n大于或者等于2)时,可以确定该相邻两个车辆之间可能存在空闲车位,此时才可以根据等分点确定空闲车位的位置信息。
可选的,该根据车位长边方向与中心点连线之间的夹角确定车位类型,包括:当该夹角为90°时,确定该车位类型为垂直车位;当该夹角为0°时,确定该车位类型为平行车位;当该夹角处于(30°,60°)或者(120°,150°)区间内时,确定该车位类型为斜向车位。
可选的,该根据该车位类型确定车位数量n,包括:当该车位类型为垂直车位时,n为小于或者等于d/w的最大整数;当该车位类型为平行车位时,n为小于或者等于d/h的最大整数;当该车位类型为斜向车位时,n为小于或者等于d/(w/sinα)的最大整数;其中,d为该中心点连线的长度,w为预设车位宽度,h为预设车位长度,α为该夹角。
其中,上述w和h的值可以预先设置在车位识别设备中,具体的,该w和h可以由开发人员或者管理人员按照预设的标准车位的长和宽进行设置,即w为预设的标准车位的宽度,h为预设的标准车位的长度。
图11是本申请实施例涉及的一种识别空闲车位的流程图。如图11所示,该空闲车位识别过程基于输入的车辆底部外接框的识别结果来进行,且该识别过程主要分为两个步骤:空闲车位类型识别和空闲车位位置识别。具体实施方式为:
步骤1(空闲车位类型识别):根据相邻两个车辆的底部外接框中心点连线与底部外接框长边方向的夹角确定车位类别;
步骤2(空闲车位位置识别):利用两个相邻车辆的底部外接框的四个顶点在车体坐标系中的坐标计算空闲车位的四个顶点的坐标。
本申请实施例针对上述两个主要步骤分别进行描述。
步骤1,空闲车位类型识别。
空闲车位的类型主要根据车辆外接框长边方向与相邻两个车辆的底部外接框中心点连线夹角来判断。具体的,请参考图12,其示出了本申请实施例示出的一种空闲车位类型识别流程图。下面结合图12所示的流程图进行详细阐述:
(a)利用车辆的底部外接框检测的识别结果(即上述步骤204获得的结果),计算相邻车辆的空间位置的关键信息,即相邻两个车辆的底部外接框的边线方向和中心点坐标。具体的,车辆的底部外接框是一个矩形框,由四个顶点的坐标进行表示描述。比如,图10中P1、P2、P3、P4为外接框的4个顶点,边线方向分为长边方向和短边方向,由对应的两条边线方向取平均得到,以图10为例,长边方向可以取直线P1P4对应的方向(可以由直线与车道之间的夹角来表示)和直线P2P3对应的方向的平均值,而短边方向可以取直线P1P2对应的方向(可以由直线与车道之间的夹角来表示)和直线P3P4对应的方向的平均值。
(b)利用相邻两个车辆的底部外接框的识别置信度作为权重,计算两个车辆的底部外接框各自的长边方向的加权平均值,得到可能存在的空闲车位的车位长边方向。
其中,车辆的底部外接框的识别置信度,可以是通过上述关键点识别模型对车辆的二维包围框中的图像进行识别获得的识别结果(即该车辆的二维包围框上的三个关键点分别对应的第一百分比、第二百分比以及第三百分比)为准确结果的概率。
具体的,在本申请实施例上述步骤203中,第二深度神经网络识别并输出一个车辆的二维包围框上的三个关键点分别对应的py1、px2以及py3的数值时,同时还输出这三个数值为准确数值的概率,即上述识别置信度。在该步骤(b)中,计算可能存在的空闲车位的边线方向时,以相邻两个车辆的底部外接框上的三个关键点分别对应的py1、px2以及py3的数值的识别置信度作为权重,对相邻两个车辆的底部外接框各自的长边方向进行加权平均,获得的可能存在的空闲车位的车位长边方向。
在另一种可能的实现方式中,车位识别设备也可以将相邻两个车辆的底部外接框的长边方向确定为上述车位长边方向。
(c)根据可能存在的空闲车位的车位长边方向,计算可能存在的空闲车位的车位长边方向与相邻两个车辆的底部外接框的中心点连线之间的夹角α,并根据夹角α的大小确定可能存在的空闲车位的车位类型。请参考图13,其示出了本申请实施例涉及的一种车位类型示意图。
其中,如图13所示,当夹角α接近90°,即夹角α与90°之间的差值在预定范围内时,可以确定相邻两车之间的空闲车位的类型为垂直车位。
当夹角α接近0°,即夹角α与0°之间的差值在预定范围内时,可以确定相邻两车之间的空闲车位的类型为平行车位。
当夹角α处于区间(30°,60°)或者(120°,150°)内时,可以确定相邻两车之间的空闲车位的类型为斜向车位。
可选的,若夹角α不属于上述任意一种情况,则可以认为本次识别车位类型的操作失败,输出可能存在的空闲车位的车位类型为空。
步骤2,空闲车位位置识别。
请参考图14,其示出了本申请实施例涉及的一种空闲车位位置识别流程图,如图14所示,空闲车位位置识别的详细步骤阐述如下:
(a)根据上述步骤1中识别出的车位类型计算中心点连线等分间隔t;
其中,对于垂直车位,t=w;对于平行车位,t=h,对于斜向车位,t=(w/sinα)。
可选的,若上述车位类型的识别结果为空,则可以认为上述相邻两个车辆的底部外接框之间不存在空闲车位。
(b)相邻两个车辆的底部外接框的中心点连线的长度d除以等分间隔t得到n,其中n为小于或者等于d/t的最大整数。相邻两个车辆之间是否含有空闲车位根据下列准则进行判断:
当n≤1时,相邻两个车辆之间不存在空闲车位;
当n>1时,相邻两个车辆之间存在n-1个空闲车位,对应的等分点即为空闲车位的中心点。
请参考图15和图16,其中,图15示出了一种相邻两个车辆之间不存在空闲车位的示意图,图16示出了其示出了相邻两个车辆之间存在空闲车位的示意图。在图15中,对于垂直车位,n=d/w=1,因此判断不存在空闲车位,在图16中,对于垂直车位,n=d/w=3,因此判断存在两个空闲车位。
(c)针对存在空闲车位情况,请参考图17,其示出了本申请实施例涉及的一种确定定点坐标的示意图,如图17所示,从空闲车位的中心点P0出发,沿着空闲车位的长边方向和短边方向分别偏移h/2、w/2的距离,得到空闲车位P1、P2、P3、P4四个顶点的坐标。
可选的,上述根据车位长边方向以及n-1个等分点在车体坐标系中的坐标,确定n-1个等分点各自对应的空闲车位在车体坐标系中的坐标时,车位识别设备可以针对n-1个等分点中任意等分点i,从等分点i在车体坐标系中的坐标开始,沿车位长边方向对应的正反两个方向分别移动h/2,获得等分点i对应的空闲车位的两条短边的中点在车体坐标系中的坐标;从等分点i对应的空闲车位的两条短边的中点在车体坐标系中的坐标开始,沿等分点i对应的空闲车位的短边方向对应的正反两个方向分别移动w/2,获得等分点i对应的空闲车位的四个顶点在车体坐标系中的坐标,等分点i对应的空闲车位的短边方向与车位长边方向垂直。或者,车位识别设备也可以针对n-1个等分点中任意等分点i,从等分点i在车体坐标系中的坐标开始,沿等分点i对应的空闲车位的短边方向对应的正反两个方向分别移动w/2,获得等分点i对应的空闲车位的两条长边的中点在车体坐标系中的坐标;从等分点i对应的空闲车位的两条长边的中点在车体坐标系中的坐标开始,沿车位长边方向对应的正反两个方向分别移动h/2,获得等分点i对应的空闲车位的四个顶点在车体坐标系中的坐标。
以图17为例,在实际应用中,车位识别设备可以从中心点P0出发,先分别沿上下方向(即车位长边方向的正反两个方向)偏移h/2,到达空闲车位的两条短边的中点,再从两条短边的中点分别沿左右方向(即车位短边方向的正反两个方向)偏移w/2,到达空闲车位的四个顶点,并获得四个顶点的在车体坐标系中的坐标。
或者,车位识别设备也可以从中心点P0出发,先分别沿左右方向偏移w/2,到达空闲车位的两条长边的中点,再从两条长边的中点分别沿上下方向偏移h/2,到达空闲车位的四个顶点,并获得四个顶点在车体坐标系中的坐标。
(d)最终输出四个顶点的坐标识别结果可以发送给车辆控制模块,以便车辆控制模块对车辆进行运动控制,比如自动泊车等。该四个顶点的坐标识别结果的输出格式可以为一个8维列向量,该8维列向量中每个元素分别为四个顶点的X轴和Y轴坐标(四个顶点的Z轴坐标均为0)。
综上所述,本申请实施例所示的方法,通过识别二维的车辆图像中的相邻两个车辆的二维包围框,并根据相邻两个车辆的二维包围框确定相邻两个车辆的底部外接框的三个顶点在车体坐标系中的坐标,并根据底部外接框的三个顶点在车体坐标系中的坐标确定相邻两个车辆之间的空闲车位,只需要车辆图像中存在能够识别出二维包围框的相邻的两个车辆,即可以确定出这两个车辆之间可能存在的空闲车位,不需要识别地面上的车位线,甚至不需要地面上存在车位线,对空闲车位的识别准确率更高;另外,本申请实施例所示的方法,只需要采集到包含至少两个相邻车辆的车辆图像,即可以实现空闲车位的识别,从而可以识别出远距离的车辆之间的空闲车位,对空闲车位的识别距离远,识别效果更好。
上述图2所示实施例中的步骤203至步骤205,仅以相邻两个车辆各自的底部外接框上的至少一个特征位置点为相邻两个车辆各自的底部外接框在车辆图像中可见的三个顶点为例进行说明,在实际应用中,上述相邻两个车辆各自的底部外接框上的至少一个特征位置点并不限制于上述底部外接框在车辆图像中可见的三个顶点。
比如,上述至少一个特征位置点可以包括车辆的底部外接框在车辆图像中可见的三个顶点以及该三个顶点之外的其它至少一个特征位置点,以提高空闲车位的位置信息的识别准确性。比如,该三个顶点之外的其它至少一个特征位置点可以包括车辆的车牌中心点、车辆的底部外接框的边上的中点、车辆的底部外接框的边上的预定比例等分点或者车身的四个角点等容易辨别的位置点。
或者,上述至少一个特征位置点也可以只包含一个或者两个位置点,比如,上述至少一个特征位置点可以包含车辆的底部外接框在车辆图像中可见的一个或者两个顶点,或者,上述至少一个特征位置点也可以包含车辆的车牌中心点、车辆的底部外接框的边上的中点、车辆的底部外接框的边上的预定比例等分点或者车身的四个角点等容易辨别的位置点中的一个或者两个位置点。其中,通过一个或者两个位置点可以大致确定相邻两个车辆之间是否存在车位。比如,当至少一个特征位置点只包含车辆的底部外接框在车辆图像中可见的一个顶点时,车位识别设备可以计算相邻两个车辆各自的底部外接框在车辆图像中可见的一个顶点在车体坐标系中的距离d1,并根据该距离d1与预设的距离阈值d0之间的大小关系确定该相邻两个车辆之间是否存在空闲车位,比如,当d1大于或者等于d0时,车位识别设备可以确定该相邻两个车辆之间存在空闲车位,其中,d0的值可以设置为3h。或者,当至少一个特征位置点包含车辆的底部外接框在车辆图像中可见的两个顶点时,车位识别设备可以计算相邻两个车辆各自的底部外接框在车辆图像中可见的两个顶点的中点在车体坐标系中的距离d2,并根据该距离d2与预设的距离阈值d0之间的大小关系确定该相邻两个车辆之间是否存在空闲车位。
在另一种可能的实现方式中,车位识别设备也可以根据包含车辆的空间对应的空间感知数据来识别车位,即车位识别设备可以根据空间感知数据中各个车辆在车体坐标系中的坐标,确定各个车辆在地面上的底部外接框在车体坐标系中的坐标,并根据相邻两个车辆在地面上的底部外接框在车体坐标系中的坐标确定相邻两个车辆之间的空闲车位。
请参考图18,其示出了本申请的一个示例性实施例提供的确定空闲车位的方法的流程图。该方法可以用于图1所示***的车位确定设备120中。如图18所示,该确定空闲车位的方法可以包括:
步骤1801,获取包含至少两个车辆的空间感知数据。
在本申请实施例中,上述空间感知数据可以是雷达点云数据或者激光点云数据。车位识别设备接收到数据采集设备发送的雷达点云数据或者激光点云数据之后,可以根据雷达点云数据或者激光点云数据判断对应的空间中是否存在至少两个车辆,若是,则确定获取到该空间感知数据。
比如,雷达点云数据或者激光点云数据等空间感知数据通常由雷达探测设备或者激光探测设备探测获得的各个空间坐标点组成,这些空间坐标点构成空间中的物体的轮廓,车位识别设备可以根据空间感知数据构成的各个物体的轮廓确定对应的物体是否为车辆。
步骤1802,根据该空间感知数据,获得该至少两个车辆中相邻两个车辆各自的底部外接框上的至少一个特征位置点的位置信息。
在本申请实施例中,车位识别设备获取到空间感知数据后,确定空间感知数据对应的空间中各个车辆的轮廓之后,根据各个车辆的轮廓确定各个车辆在地面上的正投影,并根据各个车辆在地面上的正投影确定各个车辆的底部外接框上的至少一个特征位置点的位置信息,该一个车辆的底部外接框为包含该车辆的轮廓在地面上的正投影的矩形框。
步骤1803,根据该相邻两个车辆的底部外接框上的至少一个特征位置点的位置信息,确定该相邻两个车辆之间的空闲车位。
该步骤1803的执行过程与上述图2所示实施例中的步骤205类似,此处不再赘述。
在本申请实施例中,数据采集设备可以采集车辆周围的空间感知数据,并将车辆周围的空间感知数据发送给车位确定设备,车位确定设备接收到图像采集设备采集到的空间感知数据之后,通过识别空间感知数据中的相邻两个车辆的底部外接框上的至少一个特征位置点的位置信息,并根据底部外接框上的至少一个特征位置点的位置信息来确定两个车辆之间的空闲车位,只需要空间感知数据中存在能够识别出底部外接框的相邻的两个车辆,即可以确定出这两个车辆之间的空闲车位,从而提高空闲车位的识别效果。
图19是本申请一个示例性实施例提供的车位确定设备1900的结构示意图,该车位确定设备1900可以实现为图1所示的***中的车位确定设备120。如图19所示,该车位确定设备1900可以包括:处理器1901以及存储器1903。
处理器1901可以包括一个或者一个以上处理单元,该处理单元可以是中央处理单元(英文:central processing unit,CPU)或者网络处理器(英文:network processor,NP)等。
存储器1903可用于可编程指令,该可编程指令可以由处理器1901调用。此外,该存储器1903中还可以存储各类业务数据或者用户数据。该可编程指令可以包括获取模块、包围框获得模块、位置确定模块以及车位确定模块;
其中,获取模块由处理器1901调用,以执行如图2或图18所示实施例中有关获取车辆数据信息(即车辆图像或者空间感知数据)的功能。
包围框确定模块由处理器1901调用,以执行如图2所示实施例中有关确定车辆的二维包围框的功能。
位置确定模块由处理器1901调用,以执行如图2所示实施例中有关确定相邻两个车辆各自的底部外接框上的至少一个特征位置点的位置信息的功能。
车位确定模块由处理器1901调用,以执行如图2或图18所示实施例中有关确定相邻两个车辆之间的空闲车位的功能。
可选的,该车位确定设备1900还可以包括通信接口1904,该通信接口1904可以包括网络接口。其中,该网络接口用于连接图像采集设备,可选的,该网络接口也可以连接其它设备。具体的,该网络接口可以包括有线网络接口,比如以太网接口或者光纤接口,或者,网络接口也可以包括无线网络接口,比如无线局域网接口或者蜂窝移动网络接口。车位确定设备1900通过该网络接口1904与图像采集设备或者其它设备进行通信。
可选的,处理器1901可以用总线与存储器1903和通信接口1904相连。
可选地,该车位确定设备1900还可以包括输出设备1905以及输入设备1907。输出设备1905和输入设备1907与处理器1901相连。输出设备1905可以是用于显示信息的显示器、播放声音的功放设备等,输出设备1905还可以包括输出控制器,用以提供输出到显示屏、功放设备等。输入设备1907可以是用于用户输入信息的诸如鼠标、键盘、电子触控笔或者触控面板之类的设备,输入设备1907还可以包括输出控制器以用于接收和处理来自鼠标、键盘、电子触控笔或者触控面板等设备的输入。
图20是本申请一个示例性实施例提供的模型训练设备2000的结构示意图。如图20所示,该模型训练设备2000可以包括:处理器2001以及存储器2003。
处理器2001可以包括一个或者一个以上处理单元,该处理单元可以是中央处理单元(英文:central processing unit,CPU)或者网络处理器(英文:network processor,NP)等。
存储器2003可用于可编程指令,该可编程指令可以由处理器2001调用。此外,该存储器2003中还可以存储各类业务数据或者用户数据。该可编程指令可以包括获取模块以及训练模块;
其中,获取模块由处理器2001调用,以执行如图6所示的有关获取第二样本图像的功能。
训练模块由处理器2001调用,以执行如图6所示的有关训练关键点识别模型的功能。
可选的,该模型训练设备2000还可以包括通信接口2004,该通信接口2004可以包括网络接口。该网络接口可以连接其它设备。具体的,该网络接口可以包括有线网络接口,比如以太网接口或者光纤接口,或者,网络接口也可以包括无线网络接口,比如无线局域网接口或者蜂窝移动网络接口。
可选的,处理器2001可以用总线与存储器2003和通信接口2004相连。
可选地,该模型训练设备2000还可以包括输出设备2005以及输入设备2007。输出设备2005和输入设备2007与处理器2001相连。输出设备2005可以是用于显示信息的显示器、播放声音的功放设备等,输出设备2005还可以包括输出控制器,用以提供输出到显示屏、功放设备等。输入设备2007可以是用于用户输入信息的诸如鼠标、键盘、电子触控笔或者触控面板之类的设备,输入设备2007还可以包括输出控制器以用于接收和处理来自鼠标、键盘、电子触控笔或者触控面板等设备的输入。
图21是本申请的一个示例性实施例提供的一种确定空闲车位的装置的结构图,该确定空闲车位的装置可以通过硬件电路或者软件硬件的结合实现成为车位确定设备的部分或者全部,该车位确定设备可以是上述图1所示的实施例中的车位确定设备120。该确定空闲车位的装置可以包括:获取单元2101、包围框确定单元2102、位置确定单元2103以及车位确定单元2104;
该获取单元2101,可以用于实现如图2或图18所示实施例提供的确定空闲车位的方法中,有关获取车辆数据信息(即车辆图像或者空间感知数据)的功能。
该包围框确定单元2102,可以用于实现如图2所示实施例提供的确定空闲车位的方法中,有关确定车辆的二维包围框的功能。
该位置确定单元2103,可以用于实现如图2所示实施例提供的确定空闲车位的方法中,有关确定相邻两个车辆各自的底部外接框上的至少一个特征位置点的位置信息的功能。
该车位确定单元2104,可以用于实现如图2或图18所示实施例提供的确定空闲车位的方法中,有关确定相邻两个车辆之间的空闲车位的功能。
图22是本申请的一个示例性实施例提供的一种模型训练装置的结构图,该模型训练装置可以通过硬件电路或者软件硬件的结合实现成为模型训练设备的部分或者全部。该模型训练装置可以包括:获取单元2201以及训练单元2202;
该获取单元2201,可以用于实现如图6所示的模型训练方法中,有关获取第二样本图像的功能。
该训练单元2202,可以用于实现如图6所示的模型训练方法中,有关训练关键点识别模型的功能。
需要说明的是:上述实施例提供的确定空闲车位的装置在识别空闲车位时,以及模型训练装置在训练模型时,仅以上述各功能单元的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元完成,即将装置的内部结构划分成不同的功能单元,以完成以上描述的全部或者部分功能。另外,上述实施例提供的确定空闲车位的装置与确定空闲车位的方法实施例属于同一构思,且模型训练装置与模型训练方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本申请实施例还提供一种计算机程序,该计算机程序中可以包含至少一个可编程指令,当计算机程序运行在计算机中时,计算机可以通过执行该至少一个可编程指令以实现如上述图2、图6或图18所示的方法的全部或者部分步骤。
上述本申请的实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例由处理器执行的全部或部分步骤可以通过硬件来完成,也可以通过可编程指令来控制相关的硬件完成,所述的可编程指令可以存储于一种计算机可读存储介质中,即处理器调用计算机可读存储介质中存储的可编程指令,使得该处理器执行如上述图2或图18所示实施例中的确定空闲车位方法,或者,使得该处理器执行如上述图6所示的模型训练方法,上述提到的计算机可读存储介质可以是只读存储器,磁盘或光盘等。
以上所述,仅为本申请能够实现的一种具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,以权利要求为基础进行变化或替换所得到的方案,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应该以权利要求的保护范围为准。
Claims (30)
1.一种确定空闲车位的方法,其特征在于,所述方法包括:
获取包含至少两个车辆的车辆图像;
根据所述车辆图像确定所述至少两个车辆中相邻两个车辆各自的二维包围框,所述二维包围框是所述车辆图像中对应车辆的外接矩形框;
根据所述相邻两个车辆各自的二维包围框,确定所述相邻两个车辆各自的底部外接框上的至少一个特征位置点的位置信息,所述底部外接框是对应的车辆在地面上的正投影的外接矩形框,所述特征位置点用于指示对应的底部外接框的预设位置上的点;
根据所述相邻两个车辆的底部外接框上的至少一个特征位置点的位置信息,确定所述相邻两个车辆之间的空闲车位。
2.根据权利要求1所述的方法,其特征在于,所述至少一个特征位置点包括对应的底部外接框的三个顶点,所述三个顶点用于指示所述车辆图像中可见的底部外接框的三个顶点,所述位置信息用于指示车体坐标系中的坐标;
其中,所述根据所述相邻两个车辆各自的二维包围框,确定所述相邻两个车辆各自的底部外接框上的至少一个特征位置点的位置信息,包括:
根据所述相邻两个车辆各自的二维包围框,确定所述相邻两个车辆各自的底部外接框的三个顶点在所述车体坐标系中的坐标;
所述根据所述相邻两个车辆的底部外接框上的至少一个特征位置点的位置信息,确定所述相邻两个车辆之间的空闲车位,包括:
根据所述相邻两个车辆的底部外接框的三个顶点在所述车体坐标系中的坐标,确定所述相邻两个车辆之间的空闲车位在所述车体坐标系中的坐标。
3.根据权利要求2所述的方法,其特征在于,所述根据所述相邻两个车辆各自的二维包围框,确定所述相邻两个车辆各自的底部外接框的三个顶点在所述车体坐标系中的坐标,包括:
针对所述相邻两个车辆中任一车辆i,通过关键点识别模型确定所述车辆i的二维包围框上的三个关键点的相对位置,所述三个关键点是与所述车辆i的底部外接框的三个顶点对应的三个特征点;所述关键点识别模型是预先根据样本图像训练得到的识别模型,所述样本图像是预先在二维包围框上标注有三个关键点的图像;
根据所述车辆i的二维包围框上的三个关键点的相对位置,计算所述车辆i的二维包围框上的三个关键点在所述车辆图像的坐标系中的二维坐标;
根据所述车辆i的二维包围框上的三个关键点在所述车辆图像的坐标系中的二维坐标,计算所述车辆i的底部外接框的三个顶点在所述车体坐标系中的坐标。
4.根据权利要求3所述的方法,其特征在于,所述车辆i的二维包围框上的三个关键点的相对位置包括:第一关键点相对于所述车辆i的二维包围框左下顶点的偏移量与所述车辆i的二维包围框左边线长度之间的第一百分比、第二关键点相对于所述车辆i的二维包围框左下顶点的偏移量与所述车辆i的二维包围框下边线长度之间的第二百分比以及第三关键点相对于所述车辆i的二维包围框右下顶点的偏移量与所述车辆i的二维包围框右边线长度之间的第三百分比,其中,所述第一关键点是所述车辆i的二维包围框左边线上的特征点,所述第二关键点是所述车辆i的二维包围框下边线上的特征点,所述第三关键点是所述车辆i的二维包围框右边线上的特征点;
其中,所述根据所述车辆i的二维包围框上的三个关键点的相对位置,计算所述车辆i的二维包围框上的三个关键点在所述车辆图像的坐标系中的二维坐标,包括:
根据所述第一百分比、所述第二百分比、所述第三百分比以及所述车辆i的二维包围框的四个顶点在所述车辆图像的坐标系中的坐标,计算所述第一关键点、所述第二关键点以及所述第三关键点各自在所述车辆图像的坐标系中的二维坐标。
5.根据权利要求3所述的方法,其特征在于,所述根据所述车辆i的二维包围框上的三个关键点在所述车辆图像的坐标系中的二维坐标,计算所述车辆i的底部外接框的三个顶点在所述车体坐标系中的坐标,包括:
获取图像采集设备的内参矩阵和外参矩阵,所述图像采集设备是采集所述车辆图像的设备;
根据所述车辆i的二维包围框上的三个关键点在所述车辆图像的坐标系中的二维坐标,以及所述内参矩阵和所述外参矩阵,计算所述车辆i的底部外接框的三个顶点在所述车体坐标系中的坐标。
6.根据权利要求4所述的方法,其特征在于,所述根据所述车辆i的二维包围框上的三个关键点在所述车辆图像的坐标系中的二维坐标,计算所述车辆i的底部外接框的三个顶点在所述车体坐标系中的坐标,包括:
获取图像采集设备的内参矩阵和外参矩阵,所述图像采集设备是采集所述车辆图像的设备;
根据所述车辆i的二维包围框上的三个关键点在所述车辆图像的坐标系中的二维坐标,以及所述内参矩阵和所述外参矩阵,计算所述车辆i的底部外接框的三个顶点在所述车体坐标系中的坐标。
7.根据权利要求2至6任一所述的方法,其特征在于,所述根据所述相邻两个车辆的底部外接框的三个顶点在所述车体坐标系中的坐标,确定所述相邻两个车辆之间的空闲车位在所述车体坐标系中的坐标,包括:
根据所述相邻两个车辆各自的底部外接框的三个顶点在所述车体坐标系中的坐标,计算所述相邻两个车辆各自的底部外接框的第四个顶点在所述车体坐标系中的坐标;
根据所述相邻两个车辆各自的底部外接框的四个顶点在所述车体坐标系中的坐标,计算所述相邻两个车辆各自的底部外接框的中心点在所述车体坐标系中的坐标;
根据车位长边方向与中心点连线之间的夹角确定车位类型,所述车位长边方向是根据所述相邻两个车辆中至少一个车辆的底部外接框的长边方向所确定的方向,所述中心点连线为所述相邻两个车辆的底部外接框的中心点之间的连线,所述车位类型包括垂直车位、平行车位或者斜向车位;
根据所述车位类型确定车位数量n,所述车位数量n是所述相邻两个车辆之间的车位数量;
当所述n为大于或者等于2的整数时,确定所述中心点连线上的n-1个等分点在所述车体坐标系中的坐标,所述n-1个等分点将所述中心点连线划分为n等份;
根据所述车位长边方向以及所述n-1个等分点在所述车体坐标系中的坐标,确定所述n-1个等分点各自对应的空闲车位在所述车体坐标系中的坐标。
8.根据权利要求7所述的方法,其特征在于,所述根据所述车位长边方向以及所述n-1个等分点在所述车体坐标系中的坐标,确定所述n-1个等分点各自对应的空闲车位在所述车体坐标系中的坐标,包括:
针对所述n-1个等分点中任意等分点i,从所述等分点i在所述车体坐标系中的坐标开始,沿所述车位长边方向对应的正反两个方向分别移动h/2,获得所述等分点i对应的空闲车位的两条短边的中点在所述车体坐标系中的坐标;从所述等分点i对应的空闲车位的两条短边的中点在所述车体坐标系中的坐标开始,沿所述等分点i对应的空闲车位的短边方向对应的正反两个方向分别移动w/2,获得所述等分点i对应的空闲车位的四个顶点在所述车体坐标系中的坐标;其中,h为预设车位长度,w为预设车位宽度,所述等分点i对应的空闲车位的短边方向与所述车位长边方向垂直;
或者,
针对所述n-1个等分点中任意等分点i,从所述等分点i在所述车体坐标系中的坐标开始,沿所述等分点i对应的空闲车位的短边方向对应的正反两个方向分别移动w/2,获得所述等分点i对应的空闲车位的两条长边的中点在所述车体坐标系中的坐标;从所述等分点i对应的空闲车位的两条长边的中点在所述车体坐标系中的坐标开始,沿所述车位长边方向对应的正反两个方向分别移动h/2,获得所述等分点i对应的空闲车位的四个顶点在所述车体坐标系中的坐标;其中,h为预设车位长度,w为预设车位宽度,所述等分点i对应的空闲车位的短边方向与所述车位长边方向垂直。
9.根据权利要求7所述的方法,其特征在于,所述根据车位长边方向与所述中心点连线之间的夹角确定车位类型,包括:
当所述夹角为90°时,确定所述车位类型为垂直车位;
当所述夹角为0°时,确定所述车位类型为平行车位;
当所述夹角处于(30°,60°)或者(120°,150°)区间内时,确定所述车位类型为斜向车位。
10.根据权利要求8所述的方法,其特征在于,所述根据车位长边方向与所述中心点连线之间的夹角确定车位类型,包括:
当所述夹角为90°时,确定所述车位类型为垂直车位;
当所述夹角为0°时,确定所述车位类型为平行车位;
当所述夹角处于(30°,60°)或者(120°,150°)区间内时,确定所述车位类型为斜向车位。
11.根据权利要求7所述的方法,其特征在于,所述根据所述车位类型确定车位数量n,包括:
当所述车位类型为垂直车位时,确定n为小于或者等于d/w的最大整数;
当所述车位类型为平行车位时,确定n为小于或者等于d/h的最大整数;
当所述车位类型为斜向车位时,确定n为小于或者等于d/(w/sinα)的最大整数;
其中,d为所述中心点连线的长度,w为预设车位宽度,h为预设车位长度,α为所述夹角。
12.根据权利要求8所述的方法,其特征在于,所述根据所述车位类型确定车位数量n,包括:
当所述车位类型为垂直车位时,确定n为小于或者等于d/w的最大整数;
当所述车位类型为平行车位时,确定n为小于或者等于d/h的最大整数;
当所述车位类型为斜向车位时,确定n为小于或者等于d/(w/sinα)的最大整数;
其中,d为所述中心点连线的长度,w为预设车位宽度,h为预设车位长度,α为所述夹角。
13.根据权利要求9所述的方法,其特征在于,所述根据所述车位类型确定车位数量n,包括:
当所述车位类型为垂直车位时,确定n为小于或者等于d/w的最大整数;
当所述车位类型为平行车位时,确定n为小于或者等于d/h的最大整数;
当所述车位类型为斜向车位时,确定n为小于或者等于d/(w/sinα)的最大整数;
其中,d为所述中心点连线的长度,w为预设车位宽度,h为预设车位长度,α为所述夹角。
14.根据权利要求10所述的方法,其特征在于,所述根据所述车位类型确定车位数量n,包括:
当所述车位类型为垂直车位时,确定n为小于或者等于d/w的最大整数;
当所述车位类型为平行车位时,确定n为小于或者等于d/h的最大整数;
当所述车位类型为斜向车位时,确定n为小于或者等于d/(w/sinα)的最大整数;
其中,d为所述中心点连线的长度,w为预设车位宽度,h为预设车位长度,α为所述夹角。
15.一种确定空闲车位的装置,其特征在于,所述装置包括:
获取单元,用于获取包含至少两个车辆的车辆图像;
包围框确定单元,用于根据所述车辆图像确定所述至少两个车辆中相邻两个车辆各自的二维包围框,所述二维包围框是所述车辆图像中对应车辆的外接矩形框;
位置确定单元,用于根据所述相邻两个车辆各自的二维包围框,确定所述相邻两个车辆各自的底部外接框上的至少一个特征位置点的位置信息,所述底部外接框是对应的车辆在地面上的正投影的外接矩形框,所述特征位置点用于指示底部外接框的预设位置上的点;
车位确定单元,用于根据所述相邻两个车辆的底部外接框上的至少一个特征位置点的位置信息,确定所述相邻两个车辆之间的空闲车位。
16.根据权利要求15所述的装置,其特征在于,所述至少一个特征位置点包括对应的底部外接框的三个顶点,所述三个顶点用于指示所述车辆图像中可见的底部外接框的三个顶点,所述位置信息用于指示车体坐标系中的坐标;
所述位置确定单元,具体用于根据所述相邻两个车辆的二维包围框,确定所述相邻两个车辆的底部外接框的三个顶点在所述车体坐标系中的坐标;
所述车位确定单元,具体用于根据所述相邻两个车辆的底部外接框的三个顶点在所述车体坐标系中的坐标,确定所述相邻两个车辆之间的空闲车位在所述车体坐标系中的坐标。
17.根据权利要求16所述的装置,其特征在于,所述位置确定单元,具体用于,
针对所述相邻两个车辆中的任一车辆i,通过关键点识别模型确定所述车辆i的二维包围框上的三个关键点的相对位置;所述三个关键点是与所述车辆i的底部外接框的三个顶点对应的三个特征点;所述关键点识别模型是预先根据样本图像进行机器训练得到的识别模型,所述样本图像是预先在二维包围框上标注有三个关键点的图像;
根据所述车辆i的二维包围框上的三个关键点的相对位置,计算所述车辆i的二维包围框上的三个关键点在所述车辆图像的坐标系中的二维坐标;
根据所述车辆i的二维包围框上的三个关键点在所述车辆图像的坐标系中的二维坐标,计算所述车辆i的底部外接框的三个顶点在所述车体坐标系中的坐标。
18.根据权利要求17所述的装置,其特征在于,所述车辆i的二维包围框上的三个关键点的相对位置包括:第一关键点相对于所述车辆i的二维包围框左下顶点的偏移量与所述车辆i的二维包围框左边线长度之间的第一百分比、第二关键点相对于所述车辆i的二维包围框左下顶点的偏移量与所述车辆i的二维包围框下边线长度之间的第二百分比以及第三关键点相对于所述车辆i的二维包围框右下顶点的偏移量与所述车辆i的二维包围框右边线长度之间的第三百分比,其中,所述第一关键点是所述车辆i的二维包围框左边线上的特征点,所述第二关键点是所述车辆i的二维包围框下边线上的特征点,所述第三关键点是所述车辆i的二维包围框右边线上的特征点;
在根据所述车辆i的二维包围框上的三个关键点的相对位置,计算所述车辆i的二维包围框上的三个关键点在所述车辆图像的坐标系中的二维坐标时,所述位置确定单元,具体用于,
根据所述第一百分比、所述第二百分比、所述第三百分比以及所述车辆i的二维包围框的四个顶点在所述车辆图像的坐标系中的坐标,计算所述第一关键点、所述第二关键点以及所述第三关键点各自在所述车辆图像的坐标系中的二维坐标。
19.根据权利要求17所述的装置,其特征在于,在根据所述车辆i的二维包围框上的三个关键点在所述车辆图像的坐标系中的二维坐标,计算所述车辆i的底部外接框的三个顶点在所述车体坐标系中的坐标时,所述位置确定单元,具体用于,
获取图像采集设备的内参矩阵和外参矩阵,所述图像采集设备是采集所述车辆图像的设备;
根据所述车辆i的二维包围框上的三个关键点在所述车辆图像的坐标系中的二维坐标,以及所述内参矩阵和所述外参矩阵,计算所述车辆i的底部外接框的三个顶点在所述车体坐标系中的坐标。
20.根据权利要求18所述的装置,其特征在于,在根据所述车辆i的二维包围框上的三个关键点在所述车辆图像的坐标系中的二维坐标,计算所述车辆i的底部外接框的三个顶点在所述车体坐标系中的坐标时,所述位置确定单元,具体用于,
获取图像采集设备的内参矩阵和外参矩阵,所述图像采集设备是采集所述车辆图像的设备;
根据所述车辆i的二维包围框上的三个关键点在所述车辆图像的坐标系中的二维坐标,以及所述内参矩阵和所述外参矩阵,计算所述车辆i的底部外接框的三个顶点在所述车体坐标系中的坐标。
21.根据权利要求16至20任一所述的装置,其特征在于,所述车位确定单元,具体用于,
根据所述相邻两个车辆各自的底部外接框的三个顶点在所述车体坐标系中的坐标,计算所述相邻两个车辆各自的底部外接框的第四个顶点在所述车体坐标系中的坐标;
根据所述相邻两个车辆各自的底部外接框的四个顶点在所述车体坐标系中的坐标,计算所述相邻两个车辆各自的底部外接框的中心点在所述车体坐标系中的坐标;
根据车位长边方向与中心点连线之间的夹角确定车位类型,所述车位长边方向是根据所述相邻两个车辆中至少一个车辆的底部外接框的长边方向所确定的方向,所述中心点连线为所述相邻两个车辆的底部外接框的中心点之间的连线,所述车位类型包括垂直车位、平行车位或者斜向车位;
根据所述车位类型确定车位数量n,所述车位数量n是所述相邻两个车辆之间的车位数量;
当所述n为大于或者等于2的整数时,确定所述中心点连线上的n-1个等分点在所述车体坐标系中的坐标,所述n-1个等分点将所述中心点连线划分为n等份;
根据所述车位长边方向以及所述n-1个等分点在所述车体坐标系中的坐标,确定所述n-1个等分点各自对应的空闲车位在所述车体坐标系中的坐标。
22.根据权利要求21所述的装置,其特征在于,在根据所述车位长边方向以及所述n-1个等分点在所述车体坐标系中的坐标,确定所述n-1个等分点各自对应的空闲车位在所述车体坐标系中的坐标时,所述车位确定单元,具体用于
针对所述n-1个等分点中任意等分点i,从所述等分点i在所述车体坐标系中的坐标开始,沿所述车位长边方向对应的正反两个方向分别移动h/2,获得所述等分点i对应的空闲车位的两条短边的中点在所述车体坐标系中的坐标;从所述等分点i对应的空闲车位的两条短边的中点在所述车体坐标系中的坐标开始,沿所述等分点i对应的空闲车位的短边方向对应的正反两个方向分别移动w/2,获得所述等分点i对应的空闲车位的四个顶点在所述车体坐标系中的坐标;其中,h为预设车位长度,w为预设车位宽度,所述等分点i对应的空闲车位的短边方向与所述车位长边方向垂直;
或者,
针对所述n-1个等分点中任意等分点i,从所述等分点i在所述车体坐标系中的坐标开始,沿所述等分点i对应的空闲车位的短边方向对应的正反两个方向分别移动w/2,获得所述等分点i对应的空闲车位的两条长边的中点在所述车体坐标系中的坐标;从所述等分点i对应的空闲车位的两条长边的中点在所述车体坐标系中的坐标开始,沿所述车位长边方向对应的正反两个方向分别移动h/2,获得所述等分点i对应的空闲车位的四个顶点在所述车体坐标系中的坐标;其中,h为预设车位长度,w为预设车位宽度,所述等分点i对应的空闲车位的短边方向与所述车位长边方向垂直。
23.根据权利要求21所述的装置,其特征在于,在根据车位长边方向与所述中心点连线之间的夹角确定车位类型时,所述车位确定单元,具体用于,
当所述夹角为90°时,确定所述车位类型为垂直车位;
当所述夹角为0°时,确定所述车位类型为平行车位;
当所述夹角处于(30°,60°)或者(120°,150°)区间内时,确定所述车位类型为斜向车位。
24.根据权利要求22所述的装置,其特征在于,在根据车位长边方向与所述中心点连线之间的夹角确定车位类型时,所述车位确定单元,具体用于,
当所述夹角为90°时,确定所述车位类型为垂直车位;
当所述夹角为0°时,确定所述车位类型为平行车位;
当所述夹角处于(30°,60°)或者(120°,150°)区间内时,确定所述车位类型为斜向车位。
25.根据权利要求21所述的装置,其特征在于,在根据所述车位类型确定车位数量n时,所述车位确定单元,具体用于,
当所述车位类型为垂直车位时,确定n为小于或者等于d/w的最大整数;
当所述车位类型为平行车位时,确定n为小于或者等于d/h的最大整数;
当所述车位类型为斜向车位时,确定n为小于或者等于d/(w/sinα)的最大整数;
其中,d为所述中心点连线的长度,w为预设车位宽度,h为预设车位长度,α为所述夹角。
26.根据权利要求22所述的装置,其特征在于,在根据所述车位类型确定车位数量n时,所述车位确定单元,具体用于,
当所述车位类型为垂直车位时,确定n为小于或者等于d/w的最大整数;
当所述车位类型为平行车位时,确定n为小于或者等于d/h的最大整数;
当所述车位类型为斜向车位时,确定n为小于或者等于d/(w/sinα)的最大整数;
其中,d为所述中心点连线的长度,w为预设车位宽度,h为预设车位长度,α为所述夹角。
27.根据权利要求23所述的装置,其特征在于,在根据所述车位类型确定车位数量n时,所述车位确定单元,具体用于,
当所述车位类型为垂直车位时,确定n为小于或者等于d/w的最大整数;
当所述车位类型为平行车位时,确定n为小于或者等于d/h的最大整数;
当所述车位类型为斜向车位时,确定n为小于或者等于d/(w/sinα)的最大整数;
其中,d为所述中心点连线的长度,w为预设车位宽度,h为预设车位长度,α为所述夹角。
28.根据权利要求24所述的装置,其特征在于,在根据所述车位类型确定车位数量n时,所述车位确定单元,具体用于,
当所述车位类型为垂直车位时,确定n为小于或者等于d/w的最大整数;
当所述车位类型为平行车位时,确定n为小于或者等于d/h的最大整数;
当所述车位类型为斜向车位时,确定n为小于或者等于d/(w/sinα)的最大整数;
其中,d为所述中心点连线的长度,w为预设车位宽度,h为预设车位长度,α为所述夹角。
29.一种车位确定设备,其特征在于,所述车位确定设备包括:处理器和存储器,所述存储器用于存储可编程指令;
所述处理器,用于调用所述存储器上存储的可编程指令以执行如权利要求1至14任一所述的确定空闲车位的方法。
30.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中包含可编程指令,计算机执行所述可编程指令使得所述计算机实现如权利要求1至14任一所述的确定空闲车位的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711331766.8A CN109918977B (zh) | 2017-12-13 | 2017-12-13 | 确定空闲车位的方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711331766.8A CN109918977B (zh) | 2017-12-13 | 2017-12-13 | 确定空闲车位的方法、装置及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109918977A CN109918977A (zh) | 2019-06-21 |
CN109918977B true CN109918977B (zh) | 2021-01-05 |
Family
ID=66959049
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711331766.8A Active CN109918977B (zh) | 2017-12-13 | 2017-12-13 | 确定空闲车位的方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109918977B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11790773B2 (en) * | 2019-02-25 | 2023-10-17 | Quantifly Llc | Vehicle parking data collection system and method |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110276322B (zh) * | 2019-06-26 | 2022-01-07 | 湖北亿咖通科技有限公司 | 一种结合车机闲散资源的图像处理方法及装置 |
CN112417926B (zh) * | 2019-08-22 | 2024-02-27 | 广州汽车集团股份有限公司 | 车位识别方法、装置、计算机设备及可读存储介质 |
CN110852151B (zh) * | 2019-09-26 | 2024-02-20 | 深圳市金溢科技股份有限公司 | 一种路内泊位遮挡检测方法和装置 |
CN110706509B (zh) * | 2019-10-12 | 2021-06-18 | 东软睿驰汽车技术(沈阳)有限公司 | 车位及其方向角度检测方法、装置、设备及介质 |
CN110969655B (zh) * | 2019-10-24 | 2023-08-18 | 百度在线网络技术(北京)有限公司 | 用于检测车位的方法、装置、设备、存储介质以及车辆 |
CN110796063B (zh) * | 2019-10-24 | 2022-09-09 | 百度在线网络技术(北京)有限公司 | 用于检测车位的方法、装置、设备、存储介质以及车辆 |
US11328607B2 (en) * | 2020-03-20 | 2022-05-10 | Aptiv Technologies Limited | System and method of detecting vacant parking spots |
CN112863234B (zh) * | 2021-01-05 | 2022-07-01 | 广州小鹏自动驾驶科技有限公司 | 一种车位显示方法、装置、电子设备及存储介质 |
CN113920778A (zh) * | 2021-12-15 | 2022-01-11 | 深圳佑驾创新科技有限公司 | 一种图像采集方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106056968A (zh) * | 2016-07-29 | 2016-10-26 | 北京华航无线电测量研究所 | 一种基于光学图像的车位检测方法 |
CN106504580A (zh) * | 2016-12-07 | 2017-03-15 | 深圳市捷顺科技实业股份有限公司 | 一种车位检测方法及装置 |
CN107364442A (zh) * | 2017-06-23 | 2017-11-21 | 深圳市盛路物联通讯技术有限公司 | 一种自动停车方法及*** |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9070202B2 (en) * | 2013-03-14 | 2015-06-30 | Nec Laboratories America, Inc. | Moving object localization in 3D using a single camera |
AU2017283549A1 (en) * | 2016-06-13 | 2019-01-24 | Xevo Inc. | Method and system for providing behavior of vehicle operator using virtuous cycle |
-
2017
- 2017-12-13 CN CN201711331766.8A patent/CN109918977B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106056968A (zh) * | 2016-07-29 | 2016-10-26 | 北京华航无线电测量研究所 | 一种基于光学图像的车位检测方法 |
CN106504580A (zh) * | 2016-12-07 | 2017-03-15 | 深圳市捷顺科技实业股份有限公司 | 一种车位检测方法及装置 |
CN107364442A (zh) * | 2017-06-23 | 2017-11-21 | 深圳市盛路物联通讯技术有限公司 | 一种自动停车方法及*** |
Non-Patent Citations (3)
Title |
---|
Automated Parking Space Detection Using Convolutional Neural Networks;Julien Nyambal et al.;《2017 Pattern Recognition Association of South Africa and Robotics and Mechatronics》;20171201;1-6 * |
基于图像多特征识别的空闲车位检测;杨英杰 等;《辽宁大学学报自然科学版》;20150131;第42卷(第1期);45-51 * |
基于迷你卷积神经网络的车位检测;安旭骁 等;《计算机应用》;20171127;1-5 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11790773B2 (en) * | 2019-02-25 | 2023-10-17 | Quantifly Llc | Vehicle parking data collection system and method |
Also Published As
Publication number | Publication date |
---|---|
CN109918977A (zh) | 2019-06-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109918977B (zh) | 确定空闲车位的方法、装置及设备 | |
CN113657224B (zh) | 车路协同中用于确定对象状态的方法、装置、设备 | |
CN112793564B (zh) | 一种基于全景鸟瞰图和深度学习的自主泊车辅助*** | |
CN110568447A (zh) | 视觉定位的方法、装置及计算机可读介质 | |
US10451403B2 (en) | Structure-based camera pose estimation system | |
CN111383279A (zh) | 外参标定方法、装置及电子设备 | |
CN112097732A (zh) | 一种基于双目相机的三维测距方法、***、设备及可读存储介质 | |
CN104167109A (zh) | 车辆位置的检测方法和检测装置 | |
CN110705433A (zh) | 一种基于视觉感知的桥梁变形的监测方法、装置及设备 | |
CN114219855A (zh) | 点云法向量的估计方法、装置、计算机设备和存储介质 | |
CN111243003A (zh) | 车载双目摄像机及其检测道路限高杆的方法、装置 | |
CN114611635B (zh) | 一种对象的识别方法、装置、存储介质及电子装置 | |
CN112489099A (zh) | 点云配准方法、装置、存储介质及电子设备 | |
CN115410167A (zh) | 目标检测与语义分割方法、装置、设备及存储介质 | |
CN113903188B (zh) | 车位检测方法、电子设备及计算机可读存储介质 | |
CN116386373A (zh) | 车辆定位方法、装置、存储介质及电子设备 | |
CN112381873A (zh) | 一种数据标注方法及装置 | |
CN116958218A (zh) | 一种基于标定板角点对齐的点云与图像配准方法及设备 | |
CN116912417A (zh) | 基于人脸三维重建的纹理贴图方法、装置、设备和存储介质 | |
CN115982824A (zh) | 施工现场工人空间管理方法、装置、电子设备及存储介质 | |
CN112633143B (zh) | 图像处理***、方法、头戴设备、处理设备及存储介质 | |
CN114638947A (zh) | 数据标注方法、装置、电子设备及存储介质 | |
CN113643358B (zh) | 相机的外参标定方法、装置、存储介质及*** | |
JP4546155B2 (ja) | 画像処理方法、画像処理装置および画像処理プログラム | |
CN115294234B (zh) | 图像的生成方法、装置、电子设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |