CN116385999A - 一种停车位的识别方法、装置及设备 - Google Patents
一种停车位的识别方法、装置及设备 Download PDFInfo
- Publication number
- CN116385999A CN116385999A CN202310157399.3A CN202310157399A CN116385999A CN 116385999 A CN116385999 A CN 116385999A CN 202310157399 A CN202310157399 A CN 202310157399A CN 116385999 A CN116385999 A CN 116385999A
- Authority
- CN
- China
- Prior art keywords
- parking space
- point
- determining
- line
- boundary lines
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 73
- 238000004590 computer program Methods 0.000 claims description 26
- 239000011159 matrix material Substances 0.000 claims description 9
- 238000012937 correction Methods 0.000 claims description 6
- 238000010586 diagram Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 9
- 230000006872 improvement Effects 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 229920001296 polysiloxane Polymers 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 239000010979 ruby Substances 0.000 description 1
- 229910001750 ruby Inorganic materials 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
- G06V20/58—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads
- G06V20/586—Recognition of moving objects or obstacles, e.g. vehicles or pedestrians; Recognition of traffic objects, e.g. traffic signs, traffic lights or roads of parking space
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/22—Image preprocessing by selection of a specific region containing or referencing a pattern; Locating or processing of specific regions to guide the detection or recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
-
- G—PHYSICS
- G08—SIGNALLING
- G08G—TRAFFIC CONTROL SYSTEMS
- G08G1/00—Traffic control systems for road vehicles
- G08G1/16—Anti-collision systems
- G08G1/168—Driving aids for parking, e.g. acoustic or visual feedback on parking space
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Traffic Control Systems (AREA)
- Control Of Driving Devices And Active Controlling Of Vehicle (AREA)
Abstract
本说明书实施例公开了一种停车位的识别方法、装置及设备。该方案可以包括:获取待识别的停车位点云数据集合;根据停车位点云数据集合中各个点的位置信息,确定表示停车位的若干条边界线;将若干条边界线中一条边界线确定为车位基准线;根据其他边界线与基准线的位置关系,从若干条边界线中确定出表示一个停车位的边界线;根据表示一个停车位的边界线的交点,确定表示一个停车位的四个角点;根据四个角点,确定一个停车位。
Description
技术领域
本申请涉及计算机数据处理技术领域,尤其涉及一种停车位的识别方法、装置及设备。
背景技术
随着汽车行业的不断发展,对于汽车的各种需求也越来越高。比如:对于现实中停车时,希望能够识别停车位,根据识别的停车位可以将车辆准确的停到适当的位置。而现有技术中,对于识别停车位首先需要基于点云对比度将停车位转为图像,然后采用霍夫变换提取图像直线段并计算直线段的旋转角度,接着通过水平和垂直方向进行积分投影搜索停车位的角点坐标,最后将角点坐标转为点云坐标。而这一识别方法仅能识别矩形停车位,对于普通平行四边形的停车位不适用,会造成识别停车位不准确的问题。
发明内容
本说明书实施例提供一种停车位的识别方法、装置及设备,以解决现有的停车位的识别方法存在的识别不准确的问题。
为解决上述技术问题,本说明书实施例是这样实现的:
本说明书实施例提供的一种停车位的识别方法,可以包括:
获取待识别的停车位点云数据集合;
根据所述停车位点云数据集合中各个点的位置信息,确定表示停车位的若干条边界线;
将所述若干条边界线中一条边界线确定为车位基准线;
根据其他边界线与所述基准线的位置关系,从若干条边界线中确定出表示一个停车位的边界线;
根据所述表示一个停车位的边界线的交点,确定表示一个停车位的四个角点;
根据所述四个角点,确定一个停车位。
本说明书实施例提供的一种停车位的识别装置,可以包括:
停车位点云数据集合获取模块,用于获取待识别的停车位点云数据集合;
边界线确定模块,用于根据所述停车位点云数据集合中各个点的位置信息,确定表示停车位的若干条边界线;
车位基准线确定模块,用于将所述若干条边界线中一条边界线确定为车位基准线;
同一停车位边界线确定模块,用于根据其他边界线与所述基准线的位置关系,从若干条边界线中确定出表示一个停车位的边界线;
角点确定模块,用于根据所述表示一个停车位的边界线的交点,确定表示一个停车位的四个角点;
停车位确定模块,用于根据所述四个角点,确定一个停车位。
本说明书实施例提供的一种计算机设备,可以包括存储器、处理器及存储在存储器上的计算机程序,所述处理器执行所述计算机程序以实现一种停车位的识别方法的步骤。
本说明书实施例提供的一种计算机可读存储介质,其上存储有计算机程序或指令,所述计算机程序或指令可被处理器执行以实现一种停车位的识别方法。
本说明书实施例提供的一种计算机程序产品,可以包括计算机程序或指令,所述计算机程序或指令被处理器执行时实现一种停车位的识别方法的步骤。
本说明书中至少一个实施例能够达到以下有益效果:通过获取待识别的停车位点云数据集合;根据停车位点云数据集合中各个点的位置信息,确定表示停车位的若干条边界线;将若干条边界线中一条边界线确定为车位基准线;根据其他边界线与基准线的位置关系,从若干条边界线中确定出表示一个停车位的边界线;根据表示一个停车位的边界线的交点,确定表示一个停车位的四个角点;根据四个角点,确定一个停车位。可以提高识别停车位的准确度。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本说明书实施例提供的一种停车位的识别方法在实际应用场景中的整体方案架构示意图;
图2是本说明书实施例提供的一种停车位的识别方法的流程示意图;
图3是本说明书实施例提供的一种属于同一停车位边界线的确定方法的示意图;
图4是本说明书实施例提供的一种停车位的识别装置的结构示意图;
图5是本说明书实施例提供的一种停车位的识别设备的结构示意图。
具体实施方式
为使本说明书一个或多个实施例的目的、技术方案和优点更加清楚,下面将结合本说明书具体实施例及相应的附图对本说明书一个或多个实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本说明书的一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本说明书一个或多个实施例保护的范围。
以下结合附图,详细说明本说明书各实施例提供的技术方案。
现有技术中,对于识别停车位首先需要基于点云对比度将停车位转为图像,然后采用霍夫变换提取图像直线段并计算直线段的旋转角度,接着通过水平和垂直方向进行积分投影搜索停车位的角点坐标,最后将角点坐标转为点云坐标。而这一识别方法仅能识别矩形停车位,对于普通平行四边形的停车位不适用,会造成识别停车位不准确的问题。
为了解决现有技术中的缺陷,本方案给出了以下实施例:
图1为本说明书实施例中一种停车位的识别方法在实际应用场景中的整体方案架构示意图。
如图1所示,该方案主要可以包括:点云数据1以及服务器2。在实际应用中,点云数据1可以表示停车位的点云;点云数据1可以是基于摄像头采集的停车位图像信息得到的;服务器2可以从数据库中获取点云数据1,对点云数据1进行计算,得到各个停车位对应的角点,根据角点得到各个停车位,以提高车位的识别准确度。
图2为本说明书实施例提供的一种停车位的识别方法的流程示意图。从程序角度而言,流程的执行主体可以为搭载于应用服务器的程序或应用客户端。
如图2所示,该流程可以包括以下步骤:
步骤202:获取待识别的停车位点云数据集合。
本说明书实施例中的停车位点云可以是点云采集设备对停车位进行采集,得到的停车位点云数据。点云可以是通过测量仪器得到的停车位边界线表面的点数据集合,通常使用三维坐标测量机所得到的点数量比较少,点与点的间距也比较大,叫稀疏点云;而使用三维激光扫描仪或照相式扫描仪得到的点云,点数量比较大并且比较密集,叫密集点云。可以将从数据库中获取的停车位点云投影到二维平面中。以便于根据二维坐标进行计算,从而识别停车位。可以根据投影结果划分预设范围大小的网格,比如:根据投影结果将二维平面划分为0.3m*0.3m大小的网格。可以根据划分的网格对停车点云进行聚类,即将存在点云的相邻网格中含有的点云归为同一类,从而能够得到停车位点云数据集合。实际应用中,点云采集设备输出的停车位的点云可以是包含三维坐标信息的点云信息,将停车位点云投影到二维平面中可以是将其中表示高度的纬度即Z轴的坐标去除得到的。
步骤204:根据所述停车位点云数据集合中各个点的位置信息,确定表示停车位的若干条边界线。
本说明书实施例中可以根据各个点投影至二维平面的二维坐标信息确定各个点的位置信息,可以根据各个点的位置信息选取一定范围内的点,得到多个对应点云,比如各个点0.2米范围内的点组成的点云。可以根据各个点云中含有的点的信息进行拟合,得到若干条线段,该若干条线段可以表示停车位的若干条边界线。点的信息至少可以包括点的位置信息。点的位置信息可以是用点的二维坐标信息表示的,也可以是点的三维坐标表示的。可以理解的是,若干条边界线中的任意一条边界线至少包括一个停车位的边界线。即,若干条边界线中的任意一条边界线也可以是由多个停车位的边界线组成的。
步骤206:将所述若干条边界线中一条边界线确定为车位基准线。
本说明书实施例中可以从若干条边界线中任意选择一条边界线作为车位基准线;也可以是从若干条边界线中选择最长或最短的一条边界线作为车位基准线。这里对于如何从若干条边界线中确定出一条车位基准线,并不作具体限定,用户可以根据自己的需求进行设置。
步骤208:根据其他边界线与所述基准线的位置关系,从若干条边界线中确定出表示一个停车位的边界线。
本说明书是实施例中的其他边界线可以是若干条边界线中除了车位基准线之外的其余边界线。可以从其他边界线中确定出与基准线表示同一停车位的另外三条边界线。该四条边界线可以组成一个停车位。
步骤210:根据所述表示一个停车位的边界线的交点,确定表示一个停车位的四个角点。
本说明书实施例中由于一条边界线可以是由多个停车位的停车位边界线组成的,为了防止识别发生差错,可以选取属于同一个停车位的四条边界线的交点,作为停车位的角点,可以防止出现差错,提高识别停车位的准确度。
步骤212:根据所述四个角点,确定一个停车位。
本说明书实施例中可以将四个角点进行连接,得到一个停车位,以达到识别停车位的目的。可以根据所述停车位的识别方法识别停车场中的任意停车位,在识别成功后,可以将识别出的停车位信息发送至显示设备,如车载显示器,以便显示设备进行渲染显示停车位,使得驾驶人可以参考停车位图像进行停车,提高了停车的准确性。也可以是服务器根据识别的停车位对自动驾驶系统进行停车规划,以便于控制自动驾驶车辆准确停车。
应当理解,本说明书一个或多个实施例所述的方法其中部分步骤的顺序可以根据实际需要相互交换,或者其中的部分步骤也可以省略或删除。
图2中的方法,通过获取待识别的停车位点云数据集合;根据停车位点云数据集合中各个点的位置信息,确定表示停车位的若干条边界线;将若干条边界线中一条边界线确定为车位基准线;根据其他边界线与基准线的位置关系,从若干条边界线中确定出表示一个停车位的边界线;根据表示一个停车位的边界线的交点,确定表示一个停车位的四个角点;根据四个角点,确定一个停车位。可以提高识别停车位的准确度,从而使得车辆能够根据停车位准确停车。
基于图2的方法,本说明书实施例还提供了该方法的一些具体实施方式,下面进行说明。
可选的,本说明书实施例中所述确定表示停车位的若干条边界线,具体可以包括:
获取所述停车位点云数据集合中各个点的矢量方位;
根据所述各个点的矢量方位计算主方位;所述主方位表示停车位边界线的方向;
根据所述主方位以及所述各个点的位置信息,确定各个点云对应的拟合直线方程;
根据所述拟合直线方程对所述各个点云进行拟合,得到对应点云的直线段;所述直线段表示停车位的边界线。
本说明书实施例中的对应点云可以是根据各个点的位置确定的一定范围内的邻域点集,比如各个点的0.2米范围内的点。服务器可以根据各个点的矢量方位确定主方位,主方位可以表示停车位的边界线方向。根据停车位的方向以及各个点的位置可以将表示同一直线段的点云对应的拟合直线方程确定出来,根据对应的拟合直线方程对各个点云进行拟合,得到多个线段,该线段即表示停车位的边界线,同时也可以计算各个线段的长度。
可以根据各个点的位置信息计算点的矢量方位,从而能够提高停车位边界线方向的准确性。本说明书实施例中所述获取所述停车位点云数据集合中各个点的矢量方位,具体可以包括:
根据所述各个点的位置信息,搜索在所述各个点预设半径范围内的邻域点云;
根据所述邻域点云的各个点的位置信息,计算所述邻域点云对应的协方差矩阵;
根据所述协方差矩阵,计算所述领域点云的特征向量;
将所述特征向量确定为所述邻域点云中点的矢量方位。
本说明书实施例中可以根据各个点的二维坐标信息中的坐标值对各个点进行排列,也可以是对各个点进行随机排列,对排列后的各个点依次进行搜索,从而避免漏点或者对某一个点重复搜索的行为。可以采用KD树对各个点进行搜索,从而得到每个点预设半径范围内所含有的点组成对应的邻域点云,预设半径范围内可以是2米半径范围。KD树是k-dimensional树的简称,是一种分割k维数据空间的数据结构。主要应用于多维空间关键数据的搜索,如:范围搜索和最近邻搜索。至于搜索的半径范围用户可以自行设置。可以根据搜索点的邻域点云中各个点的位置信息确定对应的协方差矩阵,对协方差矩阵进行求解,得到协方差矩阵对应的特征向量,将该特征向量作为该搜索点的矢量方位。搜索点可以理解为当前被搜索的点。可以是边搜索边计算点的矢量方位,也可以是搜索完成后,再计算各个点的矢量方位。
可以通过确定停车位边界线的方向,确定停车位的具体形状,以便于提高识别准确性。本说明书实施例中所述根据所述各个点的矢量方位计算主方位,具体可以包括:
计算所述各个点的矢量方位与纵轴正方向之间的夹角;所述纵轴为所述各个点投影至的二维平面的纵轴;
根据所述夹角,将各个点划分至对应的单元格内;所述单元格为将预设角度区间等间隔划分后得到的;
计算包含的各个点的数量最多的第一单元格内各个点的矢量方位的平均值,得到第一主方位;
从各个单元格中选取包含与所述第一主方位夹角大于第一预设角度的矢量方位的且点数最多的第二单元格;
计算所述第二单元格内各个点的矢量方位的平均值,得到第二主方位。
本说明书实施例中可以计算各个点的矢量方位与纵轴正方向之间的夹角,即各个点的矢量方位与(0,1)方向上的夹角,该夹角在0°至180°之间。可以将0°至180°的角度区间等间距划分,比如以5°为划分间隔进行划分,得到表示各个不同角度范畴的单元格,根据各个点的夹角的数值确定对应的角度范畴,将各个点划分至对应角度范畴的单元格中。统计各个单元格内的点的数量,选择点的数量最多的单元格为第一单元格。计算第一单元格内各个点的矢量方位均值,将该均值作为第一主方位。从若干单元格中筛选出点的矢量方位与第一主方位的夹角大于第一预设角度的单元格集合。统计单元格集合中各个单元格中点的矢量方位与第一主方位的夹角大于第一预设角度的点的数量,选择单元格集合中统计的点的数量最多的单元格作为第二单元格。计算第二单元格内各个点的矢量方位均值,将该均值作为第二主方位。其中第一主方位和第二主方位分别是停车位边界线的两个方向。
确定拟合直线方程,便于根据方程对各个点进行拟合,得到停车位边界线。本说明书实施例中所述根据所述主方位以及所述各个点的位置信息计算拟合直线方程,具体可以包括:
选取与所述主方位夹角小于第二预设角度的第一点云;
根据所述第一点云中各个点的位置信息,确定各个点的投影刻度;所述投影刻度是根据所述各个点的二维坐标以及所述各个点的矢量方位计算得到的;
根据所述各个点的投影刻度确定在预设刻度范围内的点,得到第一点集;
采用最小二乘法拟合所述第一点集,得到拟合结果;
根据所述拟合结果,确定对应的拟合直线方程。
本说明书实施例中可以从停车位点云数据集合中选取矢量方位与第一主方位的夹角小于第二预设角度的点组成第一点云。其中第二预设角度小于第一预设角度。根据第一点云中各个点的位置信息,即二维坐标信息计算各个点的第一投影刻度。可以根据公式p1s=v1yp1x-v1xp1y计算投影刻度,其中p1s可以表示第一投影刻度;v1y可以表示第一方位对应的纵坐标数值;v1x可以表示第一方位对应的横坐标数值;p1x可以表示第一点云中点的横坐标数值;p1y可以表示第一点云中点的纵坐标数值。从停车位点云数据集合中选择矢量方位与第二主方位的夹角小于第二预设角度的点组成第二点云,根据上述公式结合第二主方位以及第二点云中各个点的位置计算第二投影刻度。即p2s=v2yp2x-v2xp2y,其中p2s可以表示第二投影刻度;v2y可以表示第二方位对应的纵坐标数值;v2x可以表示第二方位对应的横坐标数值;p2x可以表示第二点云中点的横坐标数值;p2y可以表示第二点云中点的纵坐标数值。
本说明书实施例中可以根据第一点云中各个点的投影刻度确定预设刻度范围内的第一点集,记录第一点集信息。第一点集信息可以包括点的数量信息、点的位置信息以及点集中的中心点的位置信息等。将预设刻度范围适度的调大,根据调大后的预设刻度范围重新确定第二点集,判断第一点集中点的数量是否等于第二点集中点的数量,若是,则确定该第一点集为邻域点集;若不是,则继续对下一个点进行计算确定。对于第二点云中的各个点也可以根据所述方法进行对应的计算确定。关于对预设刻度范围的设置,可以是[p1s-0.15,p1s+0.15]的范围内,可以适度调大至[p1s-0.20,p1s+0.20]的范围内。该预设刻度范围的设置只是示意性举例,具体如何设置,请以用户实际自行设置数值为准。其中,第一点云以及第二点云中的点可以根据各个点的刻度值进行排序好,再按照排列的顺序对各个点进行统计计算。
本说明书实施例中在确定了邻域点集后,可以采用最小二乘法拟合邻域点集,得到直线方程以及方程中的参数A以及参数B。可以通过所述方法得到第一点云中各个点对应的直线方程以及对应的参数A以及参数B。
为了提高拟合直线方程的准确性,本说明书实施例中所述确定对应的拟合直线方程,具体可以包括:
获取所述各个点对应的拟合方程的参数信息;
根据所述各个点对应的拟合方程的参数信息计算法向加权均值,得到校正参数;
将所述校正参数作为所述各个点对应的拟合直线方程的参数,得到校正后的拟合直线方程。
本说明书实施例中可以根据第一点云中各个点对应的参数A以及参数B计算法向加权均值其中/>其中/>可以表示参数A的均值;/>可以表示参数B的均值;Ai可以表示第一点云中第i个点的参数A;Bi可以表示第一点云中第i个点的参数B;pni可以表示第一点云中第i个点对应的邻域点集中的点的数量。根据法向加权均值将各个直线方程校正为/>其中pcentre(x)可以表示各个邻域点集中的中心点在二维坐标中的横坐标;pcentre(y)可以表示各个邻域点集中的中心点在二维坐标中的纵坐标。可以计算邻域点集在对应的拟合直线中的投影长度,得到拟合直线段的长度以及拟合直线段。第二点云中各个点的拟合直线方程也可以根据第一点云中各个点的所述计算方式进行计算。
便于确定出停车位的某一边界线,本说明书实施例中所述将所述若干条边界线中一条边界线确定为车位基准线,具体可以包括:
从所述若干条边界线中选取长度最长的边界线作为水平线段;
将所述若干条边界线中与所述水平线段平行的边界线作为水平线段组;
将所述若干条边界线中与所述水平线段不平行的边界线作为垂直线段组;
从所述垂直线段组中选择一条边界线作为所述车位基准线。
本说明书实施例中可以将拟合直线段中长度最长的线段作为水平线段,拟合直线段可以表示边界线。依次对各个直线段进行遍历,将与水平线段平行的拟合直线段作为水平线段组;将与水平线段不平行的拟合直线段作为垂直线段组,即垂直线段组中的线段与水平线段存在夹角。可以从垂直线段组中选择最长或最短的线段甚至是任意线段作为车位基准线。
为了提高识别停车位的准确性,本说明书实施例中所述从若干条边界线中确定出表示一个停车位的边界线,具体可以包括:
根据所述车位基准线的位置,从所述若干条边界线中搜索与所述车位基准线相邻且存在投影重叠的第一线段;所述第一线段表示停车位中与所述车位基准线相对的一侧的边界线;
根据所述若干条边界线的位置、所述车位基准线的位置以及所述第一线段的位置,确定停车位中与所述车位基准线相邻两侧的邻边边界线对应的线段。
本说明书实施例中可以基于车位基准线的位置向左搜索与该基准线的方向上存在投影重叠且距离最近的线段,确定这两个线段重叠的位置区间。从水平组中搜索线段在基准线的方向上的投影刻度位于该位置区间的线段集合,对线段集合中的各个线段根据投影刻度按照从小到大的顺序进行排列,将排列后的相邻线段作为同一个停车位的另外两侧的边界线。还可以基于车位基准线的位置向右搜索与该基准线的方向上存在投影重叠且距离最近的线段,确定右侧属于同一停车位的边界线。将属于同一停车位的四条线段相交的交点作为停车位的四个角点,连接四个角点,得到一个停车位。当计算完成一个停车位后,可以从垂直线段组中按照基准线的选择规则从剩余的线段中选择一条线段作为基准线进行计算。该剩余线段为垂直线段组中除了完成计算的线段之外的其他线段。
图3为本说明书实施例提供的一种属于同一停车位边界线的确定方法的示意图。如图3所示,其中Lv可以表示车位基准线;Lh可以表示水平线段组中的水平线段;Lleft可以表示基于车位基准线的位置向左搜索与该基准线的方向上存在投影重叠且距离最近的线段;Lright可以表示基于车位基准线的位置向右搜索与该基准线的方向上存在投影重叠且距离最近的线段。
通过上述方法,可以准确的确定出属于同一停车位的边界线,进而确定出停车位的四个角点,根据四个角点得到一个停车位,提高了识别停车位的准确性。
基于同样的思路,本说明书实施例还提供了上述方法对应的装置。图4为本说明书实施例提供的对应于图2的一种停车位的识别装置的结构示意图。如图4所示,该装置可以包括:
停车位点云数据集合获取模块402,用于获取待识别的停车位点云数据集合;
边界线确定模块404,用于根据所述停车位点云数据集合中各个点的位置信息,确定表示停车位的若干条边界线;
车位基准线确定模块406,用于将所述若干条边界线中一条边界线确定为车位基准线;
同一停车位边界线确定模块408,用于根据其他边界线与所述基准线的位置关系,从若干条边界线中确定出表示一个停车位的边界线;
角点确定模块410,用于根据所述表示一个停车位的边界线的交点,确定表示一个停车位的四个角点;
停车位确定模块412,用于根据所述四个角点,确定一个停车位。
基于图4的装置,本说明书实施例还提供了该方法的一些具体实施方案,下面进行说明。
可选的,所述边界线确定模块,具体可以包括:
矢量方位获取单元,用于获取所述停车位点云数据集合中各个点的矢量方位;
主方位计算单元,用于根据所述各个点的矢量方位计算主方位;所述主方位表示停车位边界线的方向;
拟合直线方程确定单元,用于根据所述主方位以及所述各个点的位置信息,确定各个点云对应的拟合直线方程;
直线段确定单元,用于根据所述拟合直线方程对所述各个点云进行拟合,得到对应点云的直线段;所述直线段表示停车位的边界线。
可选的,所述矢量方位获取单元,具体可以用于:
根据所述各个点的位置信息,搜索在所述各个点预设半径范围内的邻域点云;
根据所述邻域点云的各个点的位置信息,计算所述邻域点云对应的协方差矩阵;
根据所述协方差矩阵,计算所述邻域点云的特征向量;
将所述特征向量确定为所述邻域点云中点的矢量方位。
可选的,所述主方位计算单元,具体可以用于:
计算所述各个点的矢量方位与纵轴正方向之间的夹角;所述纵轴为所述各个点投影至的二维平面的纵轴;
根据所述夹角,将各个点划分至对应的单元格内;所述单元格为将预设角度区间等间隔划分后得到的;
计算包含的各个点的数量最多的第一单元格内各个点的矢量方位的平均值,得到第一主方位;
从各个单元格中选取包含与所述第一主方位夹角大于第一预设角度的矢量方位的且点数最多的第二单元格;
计算所述第二单元格内各个点的矢量方位的平均值,得到第二主方位。
可选的,所述拟合直线方程确定单元,具体可以包括:
第一点云选取子单元,用于选取与所述主方位夹角小于第二预设角度的第一点云;
各个点的投影刻度确定子单元,用于根据所述第一点云中各个点的位置信息,确定各个点的投影刻度;所述投影刻度是根据所述各个点的二维坐标以及所述各个点的矢量方位计算得到的;
第一点集获取子单元,用于根据所述各个点的投影刻度确定在预设刻度范围内的点,得到第一点集;
拟合结果获取子单元,用于采用最小二乘法拟合所述第一点集,得到拟合结果;
拟合直线方程确定子单元,用于根据所述拟合结果,确定对应的拟合直线方程。
可选的,所述拟合直线方程确定子单元,具体可以用于:
获取所述各个点对应的拟合直线方程的参数信息;
根据所述各个点对应的拟合方程的参数信息计算法向加权均值,得到校正参数;
将所述校正参数作为所述各个点对应的拟合直线方程的参数,得到校正后的拟合直线方程。
可选的,所述车位基准线确定模块,具体可以用于:
从所述若干条边界线中选取长度最长的边界线作为水平线段;
将所述若干条边界线中与所述水平线段平行的边界线作为水平线段组;
将所述若干条边界线中与所述水平线段不平行的边界线作为垂直线段组;
从所述垂直线段组中选择一条边界线作为所述车位基准线。
可选的,所述同一停车位边界线确定模块,具体可以用于:
根据所述车位基准线的位置,从所述若干条边界线中搜索与所述车位基准线相邻且存在投影重叠的第一线段;所述第一线段表示停车位中与所述车位基准线相对的一侧的边界线;
根据所述若干条边界线的位置、所述车位基准线的位置以及所述第一线段的位置,确定停车位中与所述车位基准线相邻两侧的邻边边界线对应的线段。
基于同样的思路,本说明书实施例还提供了上述方法对应的设备。
图5为本说明书实施例提供的对应于图2的一种停车位的识别设备的结构示意图。如图5所示,设备500可以包括:
存储器530、处理器510及存储在存储器上的计算机程序520,处理器510执行所述计算机程序520以实现上述任一实施例中所述停车位的识别方法的步骤。
基于同样的思路,本说明书实施例还提供了上述方法对应的计算机可读存储介质。计算机可读存储介质上存储有计算机程序或指令,该计算机程序或指令可被处理器执行以实现上述任一实施例中所述停车位的识别方法。
基于同样的思路,本说明书实施例还提供了上述方法对应的计算机程序产品。计算机程序产品包括计算机程序或指令,该计算机程序或指令被处理器执行时可以实现上述任一实施例中所述停车位的识别方法的步骤。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于图5所示的设备而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field ProgrammableGateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带式磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (12)
1.一种停车位的识别方法,其特征在于,包括:
获取待识别的停车位点云数据集合;
根据所述停车位点云数据集合中各个点的位置信息,确定表示停车位的若干条边界线;
将所述若干条边界线中一条边界线确定为车位基准线;
根据其他边界线与所述基准线的位置关系,从若干条边界线中确定出表示一个停车位的边界线;
根据所述表示一个停车位的边界线的交点,确定表示一个停车位的四个角点;
根据所述四个角点,确定一个停车位。
2.根据权利要求1所述的方法,其特征在于,所述确定表示停车位的若干条边界线,具体包括:
获取所述停车位点云数据集合中各个点的矢量方位;
根据所述各个点的矢量方位计算主方位;所述主方位表示停车位边界线的方向;
根据所述主方位以及所述各个点的位置信息,确定各个点云对应的拟合直线方程;
根据所述拟合直线方程对所述各个点云进行拟合,得到对应点云的直线段;所述直线段表示停车位的边界线。
3.根据权利要求2所述的方法,其特征在于,所述获取所述停车位点云数据集合中各个点的矢量方位,具体包括:
根据所述各个点的位置信息,搜索在所述各个点预设半径范围内的邻域点云;
根据所述邻域点云的各个点的位置信息,计算所述邻域点云对应的协方差矩阵;
根据所述协方差矩阵,计算所述邻域点云的特征向量;
将所述特征向量确定为所述邻域点云中点的矢量方位。
4.根据权利要求2所述的方法,其特征在于,所述根据所述各个点的矢量方位计算主方位,具体包括:
计算所述各个点的矢量方位与纵轴正方向之间的夹角;所述纵轴为所述各个点投影至的二维平面的纵轴;
根据所述夹角,将各个点划分至对应的单元格内;所述单元格为将预设角度区间等间隔划分后得到的;
计算包含的各个点的数量最多的第一单元格内各个点的矢量方位的平均值,得到第一主方位;
从各个单元格中选取包含与所述第一主方位夹角大于第一预设角度的矢量方位的且点数最多的第二单元格;
计算所述第二单元格内各个点的矢量方位的平均值,得到第二主方位。
5.根据权利要求2所述的方法,其特征在于,所述根据所述主方位以及所述各个点的位置信息计算拟合直线方程,具体包括:
选取与所述主方位夹角小于第二预设角度的第一点云;
根据所述第一点云中各个点的位置信息,确定各个点的投影刻度;所述投影刻度是根据所述各个点的二维坐标以及所述各个点的矢量方位计算得到的;
根据所述各个点的投影刻度确定在预设刻度范围内的点,得到第一点集;
采用最小二乘法拟合所述第一点集,得到拟合结果;
根据所述拟合结果,确定对应的拟合直线方程。
6.根据权利要求5所述的方法,其特征在于,所述确定对应的拟合直线方程,具体包括:
获取所述各个点对应的拟合方程的参数信息;
根据所述各个点对应的拟合方程的参数信息计算法向加权均值,得到校正参数;
将所述校正参数作为所述各个点对应的拟合直线方程的参数,得到校正后的拟合直线方程。
7.根据权利要求1所述的方法,其特征在于,所述将所述若干条边界线中一条边界线确定为车位基准线,具体包括:
从所述若干条边界线中选取长度最长的边界线作为水平线段;
将所述若干条边界线中与所述水平线段平行的边界线作为水平线段组;
将所述若干条边界线中与所述水平线段不平行的边界线作为垂直线段组;
从所述垂直线段组中选择一条边界线作为所述车位基准线。
8.根据权利要求1所述的方法,其特征在于,所述从若干条边界线中确定出表示一个停车位的边界线,具体包括:
根据所述车位基准线的位置,从所述若干条边界线中搜索与所述车位基准线相邻且存在投影重叠的第一线段;所述第一线段表示停车位中与所述车位基准线相对的一侧的边界线;
根据所述若干条边界线的位置、所述车位基准线的位置以及所述第一线段的位置,确定停车位中与所述车位基准线相邻两侧的邻边边界线对应的线段。
9.一种停车位的识别装置,其特征在于,包括:
停车位点云数据集合获取模块,用于获取待识别的停车位点云数据集合;
边界线确定模块,用于根据所述停车位点云数据集合中各个点的位置信息,确定表示停车位的若干条边界线;
车位基准线确定模块,用于将所述若干条边界线中一条边界线确定为车位基准线;
同一停车位边界线确定模块,用于根据其他边界线与所述基准线的位置关系,从若干条边界线中确定出表示一个停车位的边界线;
角点确定模块,用于根据所述表示一个停车位的边界线的交点,确定表示一个停车位的四个角点;
停车位确定模块,用于根据所述四个角点,确定一个停车位。
10.一种计算机设备,包括存储器、处理器及存储在存储器上的计算机程序,其特征在于,所述处理器执行所述计算机程序以实现权利要求1至8中任一项所述方法的步骤。
11.一种计算机可读存储介质,其上存储有计算机程序或指令,其特征在于,所述计算机程序或指令可被处理器执行以实现权利要求1至8中任一项所述的停车位的识别方法。
12.一种计算机程序产品,包括计算机程序或指令,其特征在于,所述计算机程序或指令被处理器执行时实现权利要求1至8中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310157399.3A CN116385999A (zh) | 2023-02-20 | 2023-02-20 | 一种停车位的识别方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310157399.3A CN116385999A (zh) | 2023-02-20 | 2023-02-20 | 一种停车位的识别方法、装置及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116385999A true CN116385999A (zh) | 2023-07-04 |
Family
ID=86970164
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310157399.3A Pending CN116385999A (zh) | 2023-02-20 | 2023-02-20 | 一种停车位的识别方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116385999A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117012053A (zh) * | 2023-09-28 | 2023-11-07 | 东风悦享科技有限公司 | 一种车位检测点的后优化方法、系统及存储介质 |
-
2023
- 2023-02-20 CN CN202310157399.3A patent/CN116385999A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117012053A (zh) * | 2023-09-28 | 2023-11-07 | 东风悦享科技有限公司 | 一种车位检测点的后优化方法、系统及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20200152060A1 (en) | Underground garage parking space extraction method and system for high-definition map making | |
CN111508258B (zh) | 一种定位方法及装置 | |
CN112001456B (zh) | 一种车辆定位方法、装置、存储介质及电子设备 | |
CN113587933B (zh) | 一种基于分支定界算法的室内移动机器人定位方法 | |
CN116740361B (zh) | 一种点云分割方法、装置、存储介质及电子设备 | |
CN116385999A (zh) | 一种停车位的识别方法、装置及设备 | |
CN115408410A (zh) | 电子地图数据与地图采集数据的匹配方法、装置及设备 | |
CN111797711A (zh) | 一种模型训练的方法及装置 | |
CN110530398B (zh) | 一种电子地图精度检测的方法及装置 | |
CN114550450A (zh) | 一种验证路侧感知设备感知精度的方法、装置及电子设备 | |
CN114283148A (zh) | 一种道路元素提取方法、装置、存储介质及电子设备 | |
CN113674424A (zh) | 一种电子地图绘制的方法及装置 | |
CN116558545A (zh) | 一种传感器数据的标定方法及装置 | |
CN114332201A (zh) | 一种模型训练、目标检测的方法以及装置 | |
CN112712561A (zh) | 一种建图方法、装置、存储介质及电子设备 | |
CN114322987B (zh) | 一种构建高精地图的方法及装置 | |
CN118053153A (zh) | 一种点云数据的识别方法、装置、存储介质及电子设备 | |
CN116993931A (zh) | 一种构建地图的方法及装置 | |
CN115880685B (zh) | 一种基于votenet模型的三维目标检测方法和系统 | |
CN116608849A (zh) | 一种点云地图生成方法、装置及设备 | |
CN114706048A (zh) | 雷达和摄像头联合标定的校准方法及装置 | |
CN117437168A (zh) | 一种地图评估方法、装置、设备及存储介质 | |
CN117649758A (zh) | 校验路侧感知设备精确度的方法、装置、存储介质和设备 | |
CN115690231A (zh) | 一种基于多目视觉的定位方法 | |
CN116051772A (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 |