具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
车位智能泊车功能是指当驾驶人员将车辆驾驶至车位附近的指定区域时,车辆在人工智能(Artificial Intelligence,简称AI)技术的支撑下,尽可能自动化泊车入位的功能。
与车位智能泊车功能所不同的是,停车场智能泊车是适用于整个停车场的智能化泊车,当车辆进入停车场时,车辆进入智能驾驶模式,并在尽可能减少驾驶人员人工介入的情况下,自动化将车辆泊入识别到的空余车位中。因此,车辆需要获知停车场的位置信息,以便车辆进入停车场时启动停车场智能化泊车功能。
另外,为避免在正常的行车过程中激活泊车功能干扰车辆正常行驶以及造成不必要的算力资源消耗,停车场智能泊车功能可在车辆进入停车场时触发。因此,出于安全的需要,车辆可以获知停车场的位置信息,以便车辆进入停车场时触发停车场智能化泊车功能。
车辆可通过图像识别算法识别道闸,以判断车辆是否已进入(或正在进入)停车场。但这种方法存在较大误差,例如,车辆所进入的停车场未设置道闸时,车辆通过道闸识别技术是无法判断是否已进入(或正在进入)停车场;又例如,车辆通过高速路收费站、某些小区入口等某些设置有道闸的路段时,虽然能够识别到道闸,但是车辆并未进入停车场,导致车辆误判已进入停车。另外,受各个厂家的生产技术不同的影响,各个厂家生产的道闸也不尽相同,例如以栏杆类型进行区分,常见的道闸有:直杆道闸、曲杆道闸、折叠杆道闸和栅栏杆道闸等,识别算法不一定能识别所有种类的道闸,即道闸识别技术对道闸的识别率较低。
有鉴于此,本申请的发明人提出了本申请具体实施方式中的边界构建方法、车辆控制方法、装置、设备、车辆以及存储介质,通过对一个或多个车辆采集的车位数据确定停车场,在确定出停车场后,生成停车场的虚拟边界,并将停车场的虚拟边界下发给车辆。车辆已进入(或正在进入)虚拟边界时可以触发一些预设的功能,例如触发停车场智能泊车功能。
如图1所示,图1示出了本申请实施例提供的一种边界构建方法的流程图。所述边界构建方法应用于电子设备,具体可以应用于服务器或服务器集群(为方便说明,下面将直接以服务器为例进行说明,但这并不是本申请的限制),所述边界构建方法包括以下步骤S11至步骤S16,详细说明如下:
S11,获取车位集,所述车位集是一个或多个车辆在行车过程中采集的车位集合。
所述一个或多个车辆中每个车辆的车机均与服务器建立无线通信连接。车机指的是安装在汽车里面的车载信息娱乐产品的简称,车机在功能上能够实现人与车,车与外界(车与车)的信息通讯。
示例性地,车机与服务器基于V2N(vehicle-to-network)通信,以使得服务器为车辆提供动态地图下载、自动驾驶相关线路规划、远程控制等远程服务。当然并不局限于于此,车辆还可以与服务器基于其他形式的通信制式进行通信,所述通信制式包括WIFI、5G网络等,例如,车辆配备有车载WIFI设备,车载WIFI设备已经与服务器建立通信连接,车机与车载WIFI设备基于WLAN协议建立通信连接,从而实现车机通过车载WIFI设备与服务器建立通信连接;又例如,车机具有5G通信功能,车机基于5G移动网络与服务器建立通信连接,在本申请中对车机与服务器的具体通信方式不做具体地限制。
所述一个或多个车辆具有车位检测能力,并且在行车时,会进行全时段车位检测。
示例性地,车辆上配备有全景式影像监控系统(俗称环视摄像头或环视监控系统),车辆在行驶的途中,全景式影像监控系统会全时段对车辆周边所有视场范围内进行图像采集,并基于采集到的图像进行车位识别,并将识别到的车位传输给车辆的车机或其他车载电子设备,车机或其他车载电子设备通过通信链路将采集的车位发送至服务器。全景式影像监控系统的视场至少包括车辆的车头前方、车尾后方以及车身两侧。
一个或多个具有车位检测能力的车辆将在行车过程中采集的车位上传至服务器后,服务器将接收到的车位聚合成一个集合,得到车位集。
在一些可选的实施方式中,所述车位集中的车位是由一个车辆在行车的过程中采集的车位。
在一些可选的实施方式中,所述车位集中的车位是由多个车辆在行车的过程中采集的车位。
车位集中的车位越丰富,则越能快速确定出停车场,并构建停车场的虚拟边界,多个车辆采集车位的采集效率高于一个车辆采集车位的采集效率,因此,所述车位集中的车位可由多个车辆在行车的过程中采集得到。
在一些实施例中,车位集是服务器在预设周期内接收到的车位,将一个周期内接收到的车位聚合成一个集合,根据集合确定停车场,并基于确定出的停车场构建停车场的虚拟边界。
示例性地,预设周期的时长可以是十分钟、一小时、一天,也可以是一周,在本申请中不做具体限制。本领域技术人员可以根据接收到的车位稀疏度进行灵活设置预设周期的时长,例如,当在几个连续的周期内接收到的车位稀疏度均较为较稠密时,可以将预设周期的时长设置的相对短一些,以便电子设备快速进行数据处理,避免一个周期内接收到的车位数量过多,超过电子设备的计算负荷。当在几个连续的周期内接收到的车位稀疏度均较为稀疏时,可以将预设周期的时长设置的相对长一些,以使车位集中的车位更加丰富,以便电子设备能成功从车位集中确定出停车场。需要说明的是,当采集车位的车辆只有一个车辆时,可以将预设周期设置得相对长一些,以使所述一个车辆所采集的车位尽可能丰富。
S12,从所述车位集中剔除非停车场车位,得到停车场车位集。
非停车场车位是指不属于停车场内的车位,例如是道路两侧的侧方位车位。
所述一个车辆或多个车辆在进行车位采集时,可能会采集到位于路边的侧方位车位、某些临停车位或某些临时规划的停车区域内的车位等,即所述一个车辆或多个车辆可能会采集到一些不属于停车场内的车位。本申请的实施例旨在根据丰富的车位数据确定出停车场,是基于停车场内的车位确定停车场的边界,从而生成停车场的虚拟边界,因此需要将车辆采集的不属于停车场内的车位从车位集中剔除。
在一些实施例中,以每个车辆为基准维度进行分析,确定每个车辆采集的车位是否可能不属于停车场的车位,并将不属于停车场的车位从车位集中剔除,如图2所示,图2示出了本申请一个实施例的步骤S12的具体步骤流程图。步骤“S12,从所述车位集中剔除非停车场车位”包括以下步骤S21至步骤S23:
S21,获取所述一个或多个车辆中每个车辆的行车信息。
行车信息是车辆在行车的过程中车辆采集的外部环境信息和/或对车辆的自身状态进行记录的信息。
示例性的,车辆采集的外部环境信息可以是车辆上的感知元器件对车辆外部的环境进行感知时采集的信息,例如是车辆上的全景式影像监控系统对车辆周边的环境进行图像采集的图像信息,又例如是车辆上的毫米波雷达对车辆周边的物体进行探测采集的物体信息。对车辆的状态进行记录的信息可以是车辆上的感知元器件对车辆自身的状态进行感知时采集的信息,例如是车辆上的姿态传感器对车辆姿态进行测定时记录的姿态信息,又例如是车辆上的定位模组对车辆进行定位时记录的位置信息。
S22,根据每个车辆的行车信息,验证每个车辆各自所采集的车位与停车场的匹配关系。
车位与停车场的匹配关系表征的是车位是否是停车场内的车位。
在一些实施例中,所述行车信息包括泊车前预设里程的行车轨迹和泊车前预设里程内采集的车位信息;步骤S22可以包括以下步骤S221至步骤S223:
S221,根据车辆泊车前预设里程的行车轨迹,确定车辆的泊车点和车辆泊车前的转弯数量。
因为车辆在公共道路上行驶时,一般不太可能采集到车位,即使车辆在公共道路上采集到车位,该车位也存在较大的概率是位于道路边的临时车位,不属于停车场内的车位。而车辆泊车时有较大的概率是在停车场泊车,车辆在停车场内泊车时,全景式影像监控系统很可能会采集到车辆泊车的停车场内的车位。因此,在一些实施例中,获取车辆泊车前预设里程的行车轨迹,基于这段行车轨迹判断车辆的泊车点是否可能属于停车场内,当车辆的泊车点可能是在停车场内时,那么车辆在泊车前这段行车过程中,很可能采集到停车场中的部分车位,则保留该车辆采集的车位;而当车辆的泊车点不可能是在停车场内时,那么车辆在泊车前这段行车过程中,很可能采集到的车位也不是停车场车位,则将该车辆采集的车位从车位集中剔除。
在一些实施例中,获取的行车信息包括车辆泊车前预设里程的行车轨迹,并基于泊车前预设里程的行车轨迹验证该车辆采集的车位与停车场的匹配关系。
行车轨迹是记录了车辆在行程过程中走过的路程。在一些可选的实施方式中,所述行车轨迹可以是基于车辆定位信息进行记录的车辆走过的路段的轨迹线。在一些可选的实施方式中,所述行车轨迹也可以是车辆上的全景式影像监控系统拍摄的图像合成的轨迹图像。
车辆在泊车前的一段路程内的行车轨迹和这段行车轨迹内采集的车位信息能在一定程度上反映车辆是否泊车于停车场内,其中,预设里程如果设置的过短,可能会导致预设里程内的行车轨迹和行车信息不能准确反映车辆是否泊车于停车场内,而如果将预设里程设置的过长,要从这段行车信息中提取出有效信息(例如车辆的泊车点、车辆泊车前的转弯数量、泊车车位的车位类型、车位密度)将需要花费更多的时间进行运算。因此,出于准确性和时间开销两者的相对平衡考虑,预设里程可以是500米、550米或者650米等,当然也可以根据实际需要进行灵活设置,在本申请中不做具体限制。
在获取了预设里程的行车轨迹,可以从这段行车轨迹中提炼出车辆的泊车点地理位置信息、泊车点图像信息和泊车前车辆的转弯数量。
S222,根据车辆泊车前预设里程内采集的车位信息,确定车辆采集的泊车车位的车位类型和车位密度。
基于前述,行车信息包括车辆在行车的过程中车辆采集的外部环境信息,例如是全景式影像监控系统拍摄的图像信息。可以从采集的图像信息中提取出车辆采集的车位信息。
车位类型包括斜方位车位、侧方位车位、标准库车位。
泊车车位是车辆泊车时泊入的车位。当车辆在泊车前泊入的车位是侧方位车位时,车辆很可能未进入停车场泊车,因此,泊车前采集的车位也很可能不含停车场内的车位,故可以将泊车在侧方位车位上的车辆采集的车位从车位集中剔除。
在一些可选的实施方式中,对车位类型的识别可以是通过车位识别模型对车位图像数据中的车位类型进行识别。车位类型识别模型,通过指定数学模型结构反映了车位类型和车位形状之间的数学映射关系,那么,在车位类型识别中,实质是基于此数学映射关系对车位图像数据中的车位类型作车位形状预测,进而得到车位形状对应的车位类型。
其中,指定数学模型包括但不限于:神经网络模型、支持向量机模型、逻辑回归模型等等。
相应地,指定数学模型结构可以是多层卷积神经网络(CNN)、循环神经网络(RNN)、深度神经网络(DNN)、双向长短期记忆循环神经网络(BI-LSTM)、长短期记忆循环神经网络(LSTM)串联、并联或者串并联等等。
车位密度是一定面积区域内的车位数量,例如可以是每平方百米内的车位数量。
在一些可选的实施方式中,基于全景式影像监控系统拍摄的图像信息,对预设里程内采集的车位信息中的车位数量进行分析和统计,确定出车辆泊车前预设里程内所采集的车位的车位密度。
S223,当所述泊车点位于公共道路上、所述泊车点不在车位上、所述转弯数量小于预设转弯数、所述车位类型为侧方位车位和/或所述车位密度小于预设密度,确定所述匹配关系为不匹配。
在一些可选的实施方式中,当全景式影像监控系统拍摄的轨迹图像表征车辆泊车点上无车位(即泊车点图像信息中未检测到车位),说明车辆泊车点可能不在停车场,而是某些空旷的区域,车辆在泊车前采集的车位也很可能不是停车场内的车位,即车辆采集的车位与停车场的匹配关系为不匹配,因此可以将该车辆采集的车位从车位集中剔除。
在一些可选的实施方式中,泊车前预设里程的行车轨迹中的泊车点地理位置信息表征车辆的泊车点在公共道路上,也即当轨迹线的终点是在公共道路上时,就即使轨迹图像表征车辆泊车点上有车位,也表示车辆很可能是泊在道路两侧的临时车位上,即车辆采集的车位与停车场的匹配关系为不匹配,因此可以将该车辆采集的车位从车位集中剔除。
一般情况下,车辆从进入车库到找到空余车位并泊车入位,车辆会进行多次转弯,而当车辆泊车在公共道路或侧方位时,泊车前车辆的转弯数量明显少于车辆在停车场泊车时的转弯数量。因此,在一些可选的实施方式中,从泊车前预设里程的行车轨迹中提取车辆泊车前的转弯数量,当转弯数量小于预设转弯数时,也表示车辆泊车时很可能未泊入标准库车位或斜方位车位中,即车辆采集的车位与停车场的匹配关系为不匹配,因此可以将该车辆采集的车位从车位集中剔除。预设转弯数可以是三次、四次或五次,本领域技术人员可以根据实际需求进行灵活设置,在本申请中不做具体地限制。
停车场的车位密度通常高于道路边临时划定的侧方位车位密度,且停车场的车位密度具有一定的标准。因此,可以提前根据标准设定车辆采集的车位的车位密度,即预设密度,以判断车辆采集的车位是否可能不属于停车场内的车位。
在一些可选的实施方式中,将识别出的泊车车位为侧方位车位的车辆的匹配关系确定为不匹配。
在一些可选的实施方式中,将车位密度小于预设密度的车辆的匹配关系确定为不匹配。
需要说明的是,上述步骤S221和S222可以是串行执行,即先执行步骤S221后执行步骤S222,或先执行步骤S222后执行步骤S221;两者之间也可以是并行执行的,即步骤S221和步骤S222两者之间同步或异步并行执行。
S23,将所述匹配关系为不匹配的车辆所采集的车位从所述车位集中剔除。
当确定了匹配关系为不匹配时,可以确定车辆采集的车位很可能不是停车场内的车位,可以将该车辆采集的车位从车位集中剔除。
当确定了匹配关系为匹配时,可以确定车辆采集的车位可能是停车场内的车位,保留该车辆采集的车位。
请继续参见图1,在将车位集中的非停车场车位剔除,得到停车场车位集后,继续执行步骤S13。
S13,将所述停车场车位集中位于同一停车场的车位进行聚类,得到一个或多个停车场车位子集,其中,每个停车场车位子集分别对应一个停车场。
所述一个或多个车辆具有自身定位功能,并基于自身定位功能实时记录车辆的行车轨迹。因此,基于车辆的定位功能,可以对全景式影像监控是在车辆行车的过程中采集的图像进行地理位置信息匹配,并确定从图像中识别到的车位的地理位置信息。
在一些可选的实施方式中,步骤S13可以包括:
确定停车场车位集中每个车位对应的采集时间点;获取在采集时间点时,采集该车位的车辆的位置信息;将所述位置信息确定为车位的位置信息。
其中,车位对应的采集时间点是采集到该车位时的时间点。
示例性地,如图3所示,图3示出了本申请一个实施例的一个车辆的行车轨迹S。例如,车辆在t1时刻途径A点,在t1时刻采集到第一车位31和第二车位32,在t2时刻途径B点,在t2时刻采集到第三车位,那么可以根据采集第一车位31和第二车位32的采集时间点t1时刻时车辆所在的A点确定为第一车位31和第二车位32位置信息,根据采集第三车位33的采集时间点t2时刻时车辆所在的B点确定为第三车位33位置信息。
在确定了停车场车位集中的每个车位的位置信息后,可以根据每个车位的位置信息对停车场车位集中的车位进行聚类,将停车场车位集中可能位于同一停车场内车位进行聚合,从而将停车场车位集中的停车场车位划分成一个或多个停车场车位子集,每个停车场车位子集分别对应一个停车场。因为是将可能位于同一停车场内的车位聚类成一个子集,显然一个停车场内的多个车位的位置信息之间不会重叠,但也不会相距太远。
在一些可选的实施方式,进行聚类时,可以设置聚类规则为以每个停车场车位为中心进行搜索,将与其自身相距不超过预设距离的车位进行聚类。其中,预设距离可以是一米或两米等,在本申请中不做具体限制。
例如,存在车位1、车位2、车位3、车位4和车位5,以车位1进行搜索,其中车位2和车位3均与车位1之间小于预设距离,车位4和车位5与车位1之间大于预设距离;而以车位2进行搜索时,车位3和车位4均与车位2之间小于预设距离,车位5与车位2之间大于预设距离;以车位3进行搜索时,车位4与车位3之间小于预设距离,车位5与车位3之间大于预设距离;以车位4进行搜索时,车位5与车位4之间大于预设距离;故将车位1、车位2、车位3和车位4聚合位一个子集,将车位5聚合位一个子集。
S14,确定每个停车场车位子集各自所对应的停车场中位于最外侧的边界车位。
停车场一般都具有边界,其中处于停车场中最外侧的车位称为边界车位。需要说明的是,此处的边界车位是基于目前收集到的停车场车位进行确定的,即基于停车车位子集中的车位确定的,可能与停车场的实际边界车位存在一定出入,可以在后续步骤中进行更新,具体请参见图8所示的步骤S81至步骤S83的说明,或图10所示的步骤S101至步骤S108的说明。
基于前述,每个车位都有对应的位置信息,在确定了每个停车场对应的停车场车位子集后,可以根据每个车位的位置信息,确定每个停车场中最外侧的边界车位。
S15,根据每个停车场中的边界车位,生成每个停车场的虚拟边界,得到一个或多个停车场的虚拟边界。
在从停车场车位子集中确定出该停车场车位子集对应的停车场的边界车位后,生成该边界车位对对应的停车场的虚拟边界。
在一些可选的实施方式中,如图4所示,图4示出了本申请一个实施例的步骤S15的具体步骤流程图。步骤“S15,根据每个停车场中的边界车位,生成每个停车场的停车虚拟边界”包括以下步骤S41至步骤S45。
如图5所示,图5示出了本申请一个实施例的生成一停车场的虚拟边界的示意图。如图6所示,图6示出了本申请一个实施例的生成一停车场的虚拟边界的示意图。下面结合图4、图5和图6对步骤S15作具体说明。
S41,确定停车场的边界车位上位于最外侧的顶点。
示例性的,如图5A所示,确定停车场P1中的边界车位51、边界车位52和边界车位53,确定出这三个边界车位的最外侧的顶点M1、M2、M3、M4、M5和M6。
S42,将所述最外侧的顶点中的任意两个相邻的顶点之间进行连接,得到所述停车场的初始边界。
示例性的,如图5B所示,将顶点M1、M2、M3、M4、M5和M6中任意两个相邻的顶点之间进行连接,得到停车场P1的初始边界511。
S43,确定所述初始边界上每两条相邻的边组成的形状。
示例性的,确定边M1M2M3、边M2M3M4、边M3M4M5、边M4M5M6、边M5M6M1和边M6M1M2的形状。
若任意两条相邻的边组成的形状在所述初始边界上均不呈内凹形状,则执行步骤S44。若存在两条相邻的边组成的形状在所述初始边界上呈内凹形状,则执行步骤S45。
S44,以所述初始边界作为所述虚拟边界。
示例性的,显然边M1M2M3、边M2M3M4、边M3M4M5、边M4M5M6、边M5M6M1和边M6M1M2的在停车场P1的初始边界511上均不呈内凹形状,故将初始边界511作为停车场P1所述虚拟边界。
S45,删除所述两条相邻的边,将删除所述两条相邻的边后所形成的缺口进行连接,并返回步骤S43,直至任意两条相邻的边组成的形状在所述初始边界上均不呈内凹形状,得到所述停车场的虚拟边界。
示例性的,如图6A所示,在确定了停车场P2的确定出停车场P2的边界车位61、边界车位62、边界车位63和边界车位64,确定出这三个边界车位最外侧的顶点M8、M9、M10、M11、M12、M13、M14和M15及其初始边界611后,其上的边M11M12M13和边M13M14M15在初始边界611呈内凹形状,因此将边M11M12M13和边M13M14M15删除,并将删除边M11M12M13和边M13M14M15后在初始边界611所形成缺口进行连接,即将M11和M13连接,将M13和M15连接,得到边界612,如图6B所示,并重新确定初始边界612上的任意两个相邻的边组成的形状在初始边界612上是否呈内凹形状,显然边M11M13M15还是呈内凹状,因此将边M11M13M15也删除,将M11和M15连接,得到边界613,如图6C所示。当任意两条相邻的边组成的形状相对于所述初始边界均不呈内凹形状,显然,边界613上任意两条边组成的形状在边界613上均不呈内凹状,因此边界613即停车场P2的虚拟边界。
S16,将所述虚拟边界下发给目标车辆。
在一些可选的实施方式中,目标车辆是导航路径的终点包含一个或多个停车场中任一停车场。在一些可选的实施方式中,目标车辆是与一个或多个停车场中距离小于预设距离的车辆。其中,一个或多个停车场均有对应的虚拟边界。在一些可选的实施方式中,目标车辆是所述一个或多个采集车位的车辆中的任一车辆。
在一些可选的实施方式中,所述边界构建方法,还包括:
将所述虚拟边界按照预设规则向外扩展,得到扩展后的虚拟边界。
停车场的实际边界不可能仅仅止步于停车场内的边界车位,因此,在一些可选的实施方式中,在得到停车场的虚拟边界后,可以将停车场的虚拟边界按照预设规则向外扩展,以使虚拟边界尽可能将停车场囊括在其中。在一些可选的实施方式中,如图7所示,预设规则可以是将虚拟边界711向外扩展预设距离,例如是扩展20米,得到扩展后的虚拟边界712。在一些可选的实施方式中,预设规则也可以是将虚拟边界放大预设倍数,例如是放大1.1倍,得到扩展后的虚拟边界。
应当说明的是,图5、图6、图7中为了说明本申请的实施例,只是示意了边界车位,但并不代表限制了该停车场内不存在其他的车位。
在本申请实施例中,通过对车辆在行车过程中采集的车位进行分析,将其中的非停车场车位剔除,保留停车场车位,并将位于同一停车场的车位进行聚类,得到每个停车场所对应的停车场车位集合(即停车场车位子集),从停车场车位子集中确定出对应的停车场中处于边界上的车位,基于边界上的车位生成停车场的虚拟边界,将生成的虚拟边界下发给目标车辆。从而使得目标车辆可以获知停车场的边界信息,自然车辆也就可以获取停车场的位置信息,车辆可以基于接收到的虚拟边界判断车辆自身与停车场的位置关系,当车辆确定自身已进入停车场时,可以触发车辆激活预设功能,例如预设功能可以是停车场智能泊车功能等,这样还可以避免在正常的行车过程中激活泊车功能干扰车辆正常行驶,以及在正常行车过程中激活泊车功能造成不必要的车机算力资源消耗。
如图8所示,图8示出了本申请一个实施例的边界构建方法的步骤流程图。边界构建方法除了包括步骤S11至步骤S16之外,还包括步骤S81至步骤S83:
S81,获取任一车辆在行车过程中采集的新车位。
所述任一车辆可以是上述的目标车辆,也可以是上述的一个或多个采集车位的车辆中的车辆,还可以是其他车辆。
新车位是不属于前述的车位集中的车位。在一些可选的实施方式中,可以基于前述的图3所示的相关实施方式确定车辆采集的车位的地理位置信息,并与车位集中的车位的地理位置信息进行比对,当车位集中不存在与车辆采集的车位的地理位置信息相同车位时,则确定车辆采集的车位为新车位。
S82,确定所述新车位与所述每个停车场的所属关系。
所属关系表征了新车位是否是位于已经具有虚拟边界的停车场内。
在一些可选的实施方式中,新车位有位置信息,停车场边界也有位置信息,可以判断新车位与每个虚拟边界的位置关系,当新车位在虚拟边界外的预设距离范围内,则将该新车位确定为该虚拟边界对应的停车场内的车位,即确定为属于,反之确定为不属于。例如,可以设定预设距离为5米或4米,本领域技术人员可以根据实际进行设置。
S83,当所述所属关系表征所述新车位属于所述每个停车场中的任一停车场时,根据所述新车位,更新所述新车位所属的停车场的虚拟边界。
在一些可选的实施方式中,当所述所属关系表征所述新车位属于某一停车场时,则将该新车位归入该停车场对应的停车场车位子集,得到新停车场车位子集,并基于新停车场车位子集确定该停车场的虚拟边界。根据新停车场车位子集确定该停车场的虚拟边界的步骤可以参考前述的步骤S14和步骤S15,在此不再赘述。
在本申请实施例中,通过对车辆在行车过程中采集的新车位进行分析,并基于新车位对停车场的虚拟边界不断进行更新,以使停车场的虚拟边界逐渐将停车场内的车位完全囊括至虚拟边界内,以便目标车辆在接收到虚拟边界后,能更加准确地判断其自身是否处于停车场内。
如图9所示,图9示出了本申请一个实施例的车辆控制方法的步骤流程图。车辆控制方法除了包括步骤S91至步骤S94,还包括:
S91,目标车辆接收服务器发送的一个或多个停车场的虚拟边界。
在一些可选的实施方式中,目标车辆是导航路径的终点包含一个或多个停车场中任一停车场。在一些可选的实施方式中,目标车辆是与一个或多个停车场中距离小于预设距离的车辆。其中,一个或多个停车场均有对应的虚拟边界。在一些可选的实施方式中,目标车辆可以是所述一个或多个采集车位的车辆中的任一车辆,也可以是其他车辆。
S92,获取目标车辆的位置信息。
目标车辆具有自身定位功能,可以对自身进行定位并获取自身的位置信息。
S93,确定所述位置信息和所述一个或多个虚拟边界的位置关系。
位置关系表征目标车辆是否进入(或正在进入)虚拟边界的停车场。
S94,当所述位置关系表征所述目标车辆进入所述一个或多个停车场中的任一停车场时,控制所述车辆启动预设功能。
当位置关系为目标车辆的位置信息位于虚拟边界上则表示车辆正在进入虚拟边界对应的停车场,当位置关系为目标车辆的位置信息位于虚拟边界内则表示车辆已进入虚拟边界对应的停车场,当位置关系为目标车辆的位置信息位于虚拟边界外则表示车辆未进入虚拟边界对应的停车场。
当位置关系为表征目标车辆进入所述一个或多个停车场中的任一停车场时,可以控制目标车辆启动预设功能,预设功能包括但不限于停车场智能泊车功能、停车场图像采集功能等,在本申请中不做具体限制。
在本申请实施例中,通过对车辆在行车过程中采集的车位进行分析,将其中的非停车场车位剔除,保留停车场车位,并将位于同一停车场的车位进行聚类,得到每个停车场所对应的停车场车位集合(即停车场车位子集),从停车场车位子集中确定出对应的停车场中处于边界上的车位,基于边界上的车位生成停车场的虚拟边界,将生成的虚拟边界下发给目标车辆。从而使得目标车辆可以获知停车场的边界信息,自然车辆也就可以获取停车场的位置信息,车辆可以基于接收到的虚拟边界判断车辆自身与停车场的位置关系,当车辆确定自身已进入停车场时,可以触发车辆激活预设功能,例如预设功能可以是停车场智能泊车功能等,这样还可以避免在正常的行车过程中激活泊车功能干扰车辆正常行驶,以及在正常行车过程中激活泊车功能造成不必要的车机算力资源消耗。
如图10所示,图10示出了本申请一个实施例的方法的交互示意图。车辆控制方法除了包括步骤S101至步骤S108:
S101,接收服务器发送的一个或多个停车场的虚拟边界。
S102,获取车辆的位置信息。
S103,确定所述位置信息和所述一个或多个虚拟边界的位置关系。
S104,当所述位置关系表征所述车辆进入所述一个或多个停车场中的任一停车场时,控制所述车辆启动预设功能。
以上步骤与步骤S91至步骤S94相同,在此不再赘述,需要说明是,在S104中车辆启动的预设功能至少包括信息采集功能,例如图像采集、物体探测等。
S105,获取所述车辆对泊车停车场进行停车场元素采集得到的泊车停车场数据,所述泊车停车场是所述车辆进入的停车场。
当车辆在停车场泊车时,可以对停车场进行信息采集,例如是图像采集以感知停车场的车位以及停车场元素,例如停车场入口道闸,停车场指示牌等等。车机接受泊入停车场的车辆发送的泊车停车场数据。
S106,从所述泊车停车场数据中提取出所述泊车停车场的停车场特征。
车机从泊车停车场数据提取出泊车停车场的停车场特征,例如停车场入口道闸和/或停车场指示牌等。
S107,将所述停车场特征发送至服务。
车机通过网络将停车场特征发送至服务器。
S108,服务器接收目标车辆发送的泊车停车场的停车场特征,当所述停车场特征表征存在停车场元素位于所述泊车停车场的虚拟边界外时,根据所述停车场元素更新所述泊车停车场的虚拟边界。
当服务器接收到的某一停车场的停车场特征中存在停车场元素在虚拟边界外时,则将虚拟边界扩展至该停车场元素。示例性地,当采集的图像数据中有停车场道闸入口或者停车场指示牌在停车场外时,则将虚拟边界扩展至将停车场道闸入口或者停车场指示牌囊括在其中。
在本申请实施例中,通过对车辆在泊车过程中采集的停车场元素进行分析,并基于停车场元素对停车场的虚拟边界不断进行更新,以使停车场的虚拟边界逐渐将停车场内的所有元素完全囊括至虚拟边界内,以便目标车辆在接收到虚拟边界后,能更加准确地判断其自身是否处于停车场内。
最后需要说明,本申请的实施例主要适用于地面停车场,但也能适用于地下停车场。当出现地面停车场和地下停车场重叠时,例如车辆可以根据GPS信号是否中断确定车辆当前是在地面停车场还是地下停车场,又例如,车辆根据进入停车场时车辆的姿态确定车辆是处于地面停车场和地下停车场。
如图11所示,图11示出了本申请实施例提供的一种边界构建装置,所述边界构建装置110可以包括:第一获取模块111、剔除模块112、聚类模块113、第一确定模块114、生成模块115和第一发送模块116。具体地:
第一获取模块111,用于获取车位集,所述车位集是一个或多个车辆在行车过程中采集的车位集合;
剔除模块112,用于从所述车位集中剔除非停车场车位,得到停车场车位集;
聚类模块113,用于将所述停车场车位集中位于同一停车场的车位进行聚类,得到一个或多个停车场车位子集,其中,每个停车场车位子集分别对应一个停车场;
第一确定模块114,用于确定每个停车场车位子集各自所对应的停车场中位于最外侧的边界车位;
生成模块115,用于根据每个停车场中的边界车位,生成每个停车场的虚拟边界;
第一发送模块116,用于将所述虚拟边界下发给目标车辆。
在一些可选的实施方式中,所述剔除模块112,包括:
获取子模块,用于获取所述一个或多个车辆中每个车辆的行车信息;
验证子模块,用于根据每个车辆的行车信息,验证每个车辆各自所采集的车位与停车场的匹配关系;
剔除子模块,用于将所述匹配关系为不匹配的车辆所采集的车位从所述车位集中剔除。
在一些可选的实施方式中,所述行车信息包括泊车前预设里程的行车轨迹和泊车前预设里程内采集的车位信息;所述验证子模块,包括:
第一确定单元,用于根据车辆泊车前预设里程的行车轨迹,确定车辆的泊车点和车辆泊车前的转弯数量;
第二确定单元,用于根据车辆泊车前预设里程内采集的车位信息,确定车辆采集的泊车车位的车位类型和车位密度;
第三确定单元,用于当所述泊车点位于公共道路上、所述泊车点不在车位上、所述转弯数量小于预设转弯数、所述车位类型为侧方位车位和/或所述车位密度小于预设密度,则确定所述匹配关系为不匹配。
在一些可选的实施方式中,生成模块115,包括:
第一确定子模块,用于确定停车场的边界车位上位于最外侧的顶点;
连接子模块,用于将所述最外侧的顶点中的任意两个相邻的顶点之间进行连接,得到所述停车场的初始边界;
第二确定子模块,用于确定所述初始边界上每两条相邻的边组成的形状;
判断子模块,用于若任意两条相邻的边组成的形状在所述初始边界上均不呈内凹形状,则以所述初始边界作为所述停车场的虚拟边界;若存在两条相邻的边组成的形状在所述初始边界上呈内凹形状,则删除所述两条相邻的边,将删除所述两条相邻的边后所形成的缺口进行连接,并返回确定所述初始边界上每两条相邻的边组成的形状的步骤,直至任意两条相邻的边组成的形状在所述初始边界上均不呈内凹形状,得到所述停车场的虚拟边界。
在一些可选的实施方式中,所述边界构建装置110,还包括:
第三获取模块,用于获取任一车辆在行车过程中采集的新车位;
第三确定模块,用于确定所述新车位与所述每个停车场的所属关系;
第一更新模块,用于当所述所属关系表征所述新车位属于所述每个停车场中的任一停车场时,根据所述新车位,更新所述新车位所属的停车场的虚拟边界。
在一些可选的实施方式中,所述边界构建装置110,还包括:
第二接收模块,用于接收目标车辆发送的泊车停车场的停车场特征,所述泊车停车场是所述目标车辆所进入的停车场;
第二更新模块,用于当所述停车场特征表征存在停车场元素位于所述泊车停车场的虚拟边界外时,根据所述停车场元素更新所述泊车停车场的虚拟边界。
在一些可选的实施方式中,所述边界构建装置110,还包括:
扩展模块,用于将所述虚拟边界按照预设规则向外扩展,得到扩展后的虚拟边界。
如图12所示,图12示出了本申请实施例提供的一种车辆控制装置,所述车辆控制装置120可以包括:第一接收模块121、第二获取模块122、第二确定模块123和控制模块124。具体地:
第一接收模块121,用于接收一个或多个停车场的虚拟边界;
第二获取模块122,用于获取车辆的位置信息;
第二确定模块123,用于确定所述位置信息和所述一个或多个虚拟边界的位置关系;
控制模块124,用于当所述位置关系表征所述车辆进入所述一个或多个停车场中的任一停车场时,控制所述车辆启动预设功能。
在一些可选的实施方式中,所述车辆控制装置120,还包括:
第四获取模块,用于获取泊车停车场数据,所述泊车停车场数据是所述车辆对泊车停车场进行停车场元素进行采集得到的数据,所述泊车停车场是所述车辆进入的停车场;
提取模块,用于从所述泊车停车场数据中提取出所述泊车停车场的停车场特征;
第二发送模块,用于将所述停车场特征发送至服务器,以使所述服务器根据所述停车场特征更新所述泊车停车场的虚拟边界。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请实施例中,所显示或讨论的模块相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,在本申请实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
如图13所示,图13示出了本申请实施例提供的一种电子设备的结构框图。该电子设备130可以是前述实施例中能够运行程序的电子设备130。本申请中的电子设备130可以包括一个或多个如下部件:存储器132,用于存储一个或多个计算机程序;一个或多个处理器131,用于从所述存储器132中调用并运行所述一个或多个计算机程序,使得所述电子设备130执行前述实施例所描述的边界构建方法。
处理器131可以包括一个或者多个处理核。处理器131利用各种接口和线路连接整个电子设备130内的各个部分,通过运行或执行存储在存储器132内的指令、程序、代码集或指令集,以及调用存储在存储器132内的数据,执行电子设备130的各种功能和处理数据。可选的,处理器131可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable LogicArray,PLA)中的至少一种硬件形式来实现。处理器131可集成中央处理器(CentralProcessing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器131中,单独通过一块通信芯片进行实现。
存储器132可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。存储器132可用于存储指令、程序、代码、代码集或指令集。存储器132可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等、拍摄功能)、用于实现下述各个方法实施例的指令等。存储数据区还可以存储终端在使用中所创建的数据(比如电话本、音视频数据、地图数据、行驶记录数据)等。
如图14所示,图14示出了本申请实施例提供的一种车辆的结构框图。该车辆140可以是前述实施例中能够运行程序的车辆140。本申请中的车辆140可以包括一个或多个如下部件:存储器142,用于存储一个或多个计算机程序;一个或多个处理器141,用于从所述存储器142中调用并运行所述一个或多个计算机程序,使得所述电子设备140执行前述实施例所描述的车辆控制方法。
处理器141可以包括一个或者多个处理核。处理器141利用各种接口和线路连接整个车辆140内的各个部分,通过运行或执行存储在存储器142内的指令、程序、代码集或指令集,以及调用存储在存储器142内的数据,执行车辆140的各种功能和处理数据。可选的,处理器141可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable LogicArray,PLA)中的至少一种硬件形式来实现。处理器141可集成中央处理器(CentralProcessing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器141中,单独通过一块通信芯片进行实现。
存储器142可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory)。存储器142可用于存储指令、程序、代码、代码集或指令集。存储器142可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等、拍摄功能)、用于实现下述各个方法实施例的指令等。存储数据区还可以存储终端在使用中所创建的数据(比如电话本、音视频数据、地图数据、行驶记录数据)等。
如图15所示,图15示出了本申请实施例提供的一种计算机可读存储介质的结构框图。该计算机可读介质150中存储有程序代码,程序代码可被处理器调用执行上述方法实施例中所描述的方法。
计算机可读存储介质150可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。可选的,计算机可读存储介质包括非瞬时性计算机可读介质(non-transitory computer-readable storage medium)。计算机可读存储介质具有执行上述方法中的任何方法步骤的程序代码的存储空间。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码可以例如以适当形式进行压缩。
综上所述,本申请实施例提供的边界构建方法、车辆控制方法、装置、电子设备、车辆以及存储介质,通过对车辆在行车过程中采集的车位进行分析,将其中的非停车场车位剔除,保留停车场车位,并将位于同一停车场的车位进行聚类,得到每个停车场所对应的停车场车位集合(即停车场车位子集),从停车场车位集合中确定出对应的停车场中处于边界上的车位,基于边界上的车位生成停车场的虚拟边界,将生成的虚拟边界下发给目标车辆。从而可以使得目标车辆可以获知停车场的边界信息,自然车辆也就可以获取停车场的位置信息,车辆可以基于接收到的虚拟边界判断车辆自身与停车场的位置关系,当车辆确定自身已进入停车场时,可以触发车辆激活某些预设功能,例如预设功能可以时停车场智能泊车功能等,这样还可以避免正常的行车过程中激活泊车功能干扰车辆正常行驶,以及在正常行车过程中激活泊车功能造成不必要的车机算力资源消耗。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不驱使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。