掌桥专利:专业的专利平台
掌桥专利
首页

数据处理及导航方法、及计算机存储介质

文献发布时间:2023-06-19 16:04:54



技术领域

本申请实施例涉及导航技术领域,尤其涉及一种数据处理方法、导航方法及计算机存储介质。

背景技术

在车辆行驶过程中,不可避免地会遇到各种道路路口,具备地图导航功能的应用软件作为辅助驾驶的重要工具,可以通过文本、图像、语音等方式为驾驶员做出导航引导提示,从而引导驾驶员做出正确的驾驶决策。

通常情况下,导航引导内容包括指示道路路口处转向方式的导航动作,例如右转、左转、调头等。目前,主要依赖道路路网数据,确定导航动作。然而,道路路网数据在制作过程中的制作工艺和数据采集方式比较复杂,容易出现道路路网数据无法正确反应真实的道路形状的情况。在基于单一的道路路网数据确定的导航动作,可能会出现错误,损害用户体验。

发明内容

有鉴于此,本申请实施例提供一种数据处理及导航方案,以至少部分解决上述问题。

根据本申请实施例的第一方面,提供了一种数据处理方法,该方法包括:根据车辆行驶轨迹点序列,获得对应的道路轨迹形状;从预设的轨迹模板中,获得与所述道路轨迹形状相匹配的轨迹模板;使用所述轨迹模板对所述道路轨迹形状进行截取,获得截取后的轨迹片段及所述轨迹片段对应的目标轨迹点序列;确定所述目标轨迹点序列的起点、终点和中间点,其中,所述中间点为所述目标轨迹点序列中与车辆转向角度相关的轨迹点;根据所述起点、所述终点和所述中间点确定车辆转向角度。

根据本申请实施例的第二方面,提供了一种数据处理装置,该装置包括:第一获得模块,用于根据车辆行驶轨迹点序列,获得对应的道路轨迹形状;第二获得模块,用于从预设的轨迹模板中,获得与所述道路轨迹形状相匹配的轨迹模板;截取模块,用于使用所述轨迹模板对所述道路轨迹形状进行截取,获得截取后的轨迹片段及所述轨迹片段对应的目标轨迹点序列;第一确定模块,用于确定所述目标轨迹点序列的起点、终点和中间点,其中,所述中间点为所述目标轨迹点序列中与车辆转向角度相关的轨迹点;第二确定模块,用于根据所述起点、所述终点和所述中间点确定车辆转向角度。

根据本申请实施例的第三方面,提供了一种导航方法,包括:基于起点和终点,规划导航路线;基于预先生成的导航动作,确定所述导航路线对应的导航动作数据,基于第一方面所述方法预先生成所述导航动作。

根据本申请实施例的第四方面,提供了一种电子设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如第一方面所述的数据处理方法对应的操作。

根据本申请实施例的第五方面,提供了一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面所述的数据处理方法。

通过本申请实施例提供的数据处理方案,根据车辆行驶轨迹点序列,获得对应的道路轨迹形状;从预设的轨迹模板中,获得与道路轨迹形状相匹配的轨迹模板;使用轨迹模板对道路轨迹形状进行截取,获得截取后的轨迹片段及轨迹片段对应的目标轨迹点序列,截取得到的目标轨迹点序列与车辆转向角度密切相关,提高了计算车辆转向角度的准确性;确定目标轨迹点序列的起点、终点和中间点,其中,中间点为目标轨迹点序列中与车辆转向角度相关的轨迹点,通过确定中间点的方法,可以减小轨迹点序列和道路路网数据发生偏离所带来的误差;根据起点、终点和中间点确定车辆转向角度,提高了车辆转向角度的准确性,降低了由于道路路网数据发生错误所带来的导航不准确的情况,提升了用户体验。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请实施例中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。

图1为本申请实施例提供的一种数据处理方法的步骤流程图;

图2为本申请实施例提供的一种应用场景示意图;

图3为本申请实施例提供的另一种应用场景示意图;

图4为本申请实施例提供的一种轨迹点选取结果的示意图;

图5A为本申请实施例提供的一种车辆转向角度的示意图;

图5B为本申请实施例提供的另一种车辆转向角度的示意图;

图5C为本申请实施例提供的再一种车辆转向角度的示意图;

图6A为本申请实施例提供的一种车辆转向角度与车辆转向动作转化关系的示意图;

图6B为本申请实施例提供的另一种车辆转向角度与车辆转向动作转化关系的示意图;

图7为本申请实施例提供的另一种数据处理方法的步骤流程图;

图8为本申请实施例提供的一种导航方法的步骤流程图;

图9为本申请实施例提供的一种数据处理装置的结构框图;

图10为本申请实施例提供的一种电子设备的结构示意图。

具体实施方式

为了使本领域的人员更好地理解本申请实施例中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请实施例一部分实施例,而不是全部的实施例。基于本申请实施例中的实施例,本领域普通技术人员所获得的所有其他实施例,都应当属于本申请实施例保护的范围。

需要说明的是,本申请中的第一和第二只是为了区分名称,并不代表顺序关系,不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量,例如,第一预设数量、第二预设数量,第一获得模块、第二获得模块,第一确定模块、第二确定模块;本申请中的目标只是为了表示单数概念,而不用于限制,不是特指某一个,例如,目标轨迹点序列、车辆目标行驶方向;本申请中的多个指两个或两个以上,例如,多个轨迹点、多个夹角等。

下面结合本申请实施例附图进一步说明本申请实施例具体实现。

实施例一、

本申请实施例一提供的数据处理方法,如图1所示,图1为本申请实施例提供的一种数据处理方法的流程图,该数据处理方法包括以下步骤:

步骤S101、根据车辆行驶轨迹点序列,获得对应的道路轨迹形状。

车辆行驶轨迹点序列包括一系列连续的定位点,定位点可以由相应的定位装置如车载全球定位系统(Global Positioning System,GPS)获得,一个车辆行驶轨迹点序列对应一个道路,可以通过采集车辆的道路行驶轨迹得到车辆行驶轨迹点序列。相对应的,该车辆行驶轨迹点序列对应出一定的形状,即道路轨迹形状,从而可获知这一段道路的道路形状,例如,直行道路、左转道路、右转道路等。

步骤S102、从预设的轨迹模板中,获得与道路轨迹形状相匹配的轨迹模板。

轨迹模板用于描述不同的轨迹形状,可反映多个轨迹点之间的关系,例如,轨迹点和轨迹点之间是慢慢的向左移动的一种角度的变化,该轨迹模板中所有的轨迹点之间形成的角度是往左转的方向移动。可选地,轨迹模板表征具有代表性的道路路口处的轨迹形状、轨迹走势、轨迹曲线等。

本申请实施例中预设的轨迹模板可以由本领域技术人员根据实际需求适当设置;或者通过收集大量的车辆行驶轨迹点序列,对大量的车辆行驶轨迹点序列进行分析、归类、拟合等处理的案例中提炼出来的轨迹模板;或者,道路路网中包含不同形状的道路路口,每个形状的道路路口具有一定的规则,将多个形状相似的道路路口划分为到同一个轨迹模板,并根据多个形状相似的道路路口对应的道路路网数据得到该轨迹模板的轨迹曲线;对此本申请实施例不做限制。

当获得一个车辆行驶轨迹点序列时,将该车辆行驶轨迹点序列对应的道路轨迹形状与轨迹模板进行匹配,查看该道路轨迹形状满足哪个轨迹模板的轨迹曲线,从而获得与道路轨迹形状相匹配的轨迹模板。示例地,本申请实施例中可以通过将轨迹模板和道路轨迹形状之间进行形状比对、走势比对、曲线比对等比对方式,获得与道路轨迹形状相匹配的轨迹模板。

本申请实施例中的轨迹模板可根据预设规则进行定义,可以在使用过程中进行不断的维护和升级,从而提高轨迹模板的准确性和多样性,以便可以与更多的道路轨迹形状相匹配,并提高道路轨迹形状的匹配度,提高相匹配的轨迹模板的准确性。

步骤S103、使用轨迹模板对道路轨迹形状进行截取,获得截取后的轨迹片段及轨迹片段对应的目标轨迹点序列。

使用轨迹模板对道路轨迹形状进行截取,得到截取后的轨迹片段,轨迹片段是道路轨迹形状中的一部分,该轨迹片段反映道路轨迹形状中车辆在行驶该道路路口时与车辆转向角度密切相关的部分。轨迹片段对应的目标轨迹点序列是与车辆转向角度密切相关的轨迹点序列。

步骤S104、确定目标轨迹点序列的起点、终点和中间点,其中,中间点为目标轨迹点序列中与车辆转向角度相关的轨迹点。

目标轨迹点序列包括多个轨迹点,在多个轨迹点中选择起点、终点和中间点。本示例中将目标轨迹点序列中两端的轨迹点作为起点和终点,例如目标轨迹点序列中包括20个轨迹点,以第1个轨迹点到第20个轨迹点的方向为车辆行驶方向,将20个轨迹点中的第1个轨迹点作为起点,将20个轨迹点中的第20个轨迹点作为终点。并在剩余的18个轨迹点选择中间点,该中间点与车辆转向角度密切相关,可以减小轨迹点序列和道路路网数据发生偏离所带来的误差。

如图2所示,图2为本申请实施例提供的一种应用场景示意图,图2中2.1-2.4中的实线均表示道路路网数据,该实线也可以理解为道路路网的link,2.1中的多个点表示车辆行驶轨迹点序列。2.2中的多个点表示取后的轨迹片段对应的目标轨迹点序列。2.3中的两个点分别表示起点和终点,此处的起点和终点是根据车辆行驶方向确定,可以理解的是,若行驶方向与图2中的行驶方向相反,则起点和终点进行互换。2.4中三个点表示起点、终点和中间点,中间点与车辆转向角度密切相关,直接影响根据起点、中间点和终点计算得到的车辆转向角度。通过图2可以确定目标轨迹点序列的起点、终点和中间点,具体地,通过2.1-2.4实现,2.1、指定道路路口的轨迹;2.2、截取轨迹:根据轨迹模板在道路路口位置附近截断轨迹,被截取掉的那部分轨迹点,实质上对道路路口拐弯处的车辆转向角度是没有影响的,若未被截取在计算车辆转向角度时,会对计算结果产生干扰;2.3、在截断后轨迹上选择起点和终点:将截断后的轨迹片段上首端和末端对应的轨迹点作为起点和终点;2.4、选择中间点:在截断后的轨迹片段对应的目标轨迹点序列上选择中间点。

步骤S105、根据起点、终点和中间点确定车辆转向角度。

基于起点、终点和中间点计算车辆转向角度,车辆转向角度表征车辆在当前行驶过程中需要偏转的角度。该车辆转向角度可用于发布指示导航动作的信息,该导航动作也就是车辆转向动作,例如,左转、调头、直行等。如图3所示,图3为本申请实施例提供的另一种应用场景示意图,该应用场景中,通过语音播报提示驾驶员导航动作:“98米右转进入广顺南大街”。

相关技术中,车载导航系统根据单一的道路路网数据对驾驶员提前进行导航动作指示,道路路网数据包括但不限于道路通行指示、交通限行规则等。基于单一的道路路网数据给出导航动作指示,容易导致导航出现错误,给驾驶员带来错误的导航动作引导,影响出行体验。而本申请实施例根据车辆行驶轨迹点序列,获得对应的道路轨迹形状;从预设的轨迹模板中,获得与道路轨迹形状相匹配的轨迹模板;使用轨迹模板对道路轨迹形状进行截取,获得截取后的轨迹片段及轨迹片段对应的目标轨迹点序列,截取得到的目标轨迹点序列与车辆转向角度密切相关,提高了计算车辆转向角度的准确性;确定目标轨迹点序列的起点、终点和中间点,其中,中间点为目标轨迹点序列中与车辆转向角度相关的轨迹点,通过确定中间点的方法,可以减小轨迹点序列和道路路网数据发生偏离所带来的误差;根据起点、终点和中间点确定车辆转向角度,提高了车辆转向角度的准确性,降低了由于道路路网数据发生错误所带来的导航不准确的情况,提升了用户体验。

本申请实施例的数据处理方法可以由任意适当的具有数据处理能力的电子设备执行,包括但不限于:服务器、PC机、移动终端等。

实施例二、

本申请实施例二基于实施例一的方案,可选地,在本申请实施例的一种示例中,本申请实施例可以包括以下步骤S201-S208。

步骤S201、获取车辆行驶过程中产生的GPS轨迹数据。

步骤S202、将GPS轨迹数据进行轨迹聚合,获得连续的车辆行驶轨迹点序列。

GPS轨迹数据表征车辆在道路行驶时所产生的轨迹数据,GPS轨迹数据可通过收集大量的行车记录数据进行处理后得到,也可通过工作人员收集各个道路的轨迹数据得到,对此本申请实施例不做限制。

以一个道路路口为例,多个车辆从该道路路口行驶从而生成多个GPS轨迹数据,将多个GPS轨迹数据进行轨迹聚合,轨迹聚合表示根据预设规则对多个GPS轨迹数据进行聚合分析,包括但不限于过滤偏离道路较远的GPS轨迹数据,计算筛选后的GPS轨迹数据的平均值。将GPS轨迹数据进行轨迹聚合后,可以获得连续的车辆行驶轨迹点序列。通过对GPS轨迹数据进行轨迹聚合的方式获得连续的车辆行驶轨迹点序列,由于综合考虑多个GPS轨迹数据,相较于将某个GPS轨迹数据作为车辆行驶轨迹点序列,提高了车辆行驶轨迹点序列的准确性。

步骤S203、根据车辆行驶轨迹点序列,获得对应的道路轨迹形状。

步骤S204、从预设的轨迹模板中,获得与道路轨迹形状相匹配的轨迹模板。

步骤S205、使用轨迹模板对道路轨迹形状进行截取,获得截取后的轨迹片段及轨迹片段对应的目标轨迹点序列。

需要说明的是,本申请实施例中步骤S203-步骤S205与实施例一中步骤S101-步骤S103一致,在此不再赘述。

步骤S206、确定目标轨迹点序列中按时间顺序排序在首位和末位的轨迹点为起点和终点;根据目标轨迹点序列中除起点和终点外的轨迹点分别与起点和终点之间的关系,选取中间点。

需要说明的是,步骤S206为实施例一中步骤S104确定目标轨迹点序列的中间点的一种实现方式。

目标轨迹点序列中包括多个轨迹点,多个轨迹点分别与起点和终点之间的关系包括但不限于:轨迹点与起点和终点之间的位置关系(例如,轨迹点靠近起点、轨迹点靠近终点)、轨迹点与起点之间的距离、轨迹点与终点之间的距离、轨迹点与起点之间相隔几个轨迹点、轨迹点与终点之间相隔几个轨迹点、轨迹点与起点和终点之间构成的夹角等,对此本申请实施例不做限制。本示例中根据多个轨迹点分别与起点和终点之间的关系选取中间点,充分考虑了起点和终点的位置,相较于直接将任意一个轨迹点作为中间点的方案,提高了获得中间点的准确性。

在根据目标轨迹点序列中除起点和终点外的轨迹点分别与起点和终点之间的关系,选取中间点时,可以通过以下两个示例实现。

第一个示例,可选地,在本申请实施例的一个示例中,针对目标轨迹点序列中除起点和终点外的每个轨迹点,计算起点到轨迹点构成的线段与轨迹点到终点构成的线段之间的夹角;根据每个轨迹点对应的夹角,得到多个轨迹点对应的多个夹角;将多个轨迹点对应的多个夹角中最大夹角对应的轨迹点确定为中间点。

本示例中通过计算起点到轨迹点构成的线段与轨迹点到终点构成的线段之间的夹角,得到多个夹角,并将多个夹角中最大夹角对应的轨迹点确定为中间点。如图4所示,图4为本申请实施例提供的一种轨迹点选取结果的示意图,图4中的4.1-4.6中实线均表示道路路网数据,该实线也可以理解为道路路网的link,多个点构成目标轨迹点序列,目标轨迹点序列的首端和末端分别表示起点和终点,此处的起点和终点是根据车辆行驶方向确定,中间点是与车辆转向角度密切相关的轨迹点。本示例的中间点与车辆转向角度密切相关,可以减小轨迹点序列和道路路网数据发生偏离所带来的误差,即使道路路网数据发生错误,也不会对选择轨迹点产生影响,以此提高了通过起点、终点和选择的中间点计算得到的车辆转向角度准确性。

第二个示例,在多个轨迹点中,按照起点到终点的方向,以起点为基点,滤除第一预设数量的轨迹点;和/或,按照终点到起点的方向,以终点为基点,滤除第二预设数量的轨迹点;针对目标轨迹点序列中滤除第一预设数量的轨迹点,和/或,滤除第二预设数量的轨迹点之后的每个轨迹点,计算起点到轨迹点构成的线段与轨迹点到终点构成的线段之间的夹角;根据每个轨迹点对应的夹角,得到多个轨迹点对应的多个夹角;将多个轨迹点对应的多个夹角中最大夹角对应的轨迹点确定为中间点。

需要说明的是,第一预设数量和第二预设数量可以由本领域技术人员根据实际需求适当设置,例如,根据大量的实验数据或多个轨迹点的数量或目标轨迹点序列对应的道路路口形状等进行设置。只要是第一预设数量小于多个轨迹点中除去起点和终点后的数量即可;或者第二预设数量小于多个轨迹点中除去起点和终点后的数量即可;或者,第一预设数量和第二预设数量之和小于多个轨迹点中除去起点和终点后的数量即可。且第一预设数量和第二预设数量可以设置为相同或不同。对此本申请实施例不做限制。

本示例在计算起点到轨迹点构成的线段与轨迹点到终点构成的线段之间的夹角之前,还对多个轨迹点进行过滤。以下列举三种可实现的方式对此进行说明,一种可实现的方式中,按照起点到终点的方向,以起点为基点,滤除第一预设数量的轨迹点,例如,目标轨迹点序列中包括20个轨迹点,以第1个轨迹点到第20个轨迹点的方向为车辆行驶方向,将20个轨迹点中的第1个轨迹点作为起点,将20个轨迹点中的第20个轨迹点作为终点,第一预设数量为5,滤除第2-6个轨迹点,在剩余的第7-19个轨迹点中选择中间点,选择中间点的方法与第一个示例相同,在此不再赘述,本示例中通过滤除靠近起点的轨迹点,在剩余的轨迹点中选择中间点,增加了选择中间点的准确性。另一种可实现的方式中,按照起点到终点的方向,以终点为基点,滤除第二预设数量的轨迹点,具体实现方式与滤除第一预设数量的轨迹点相同,在此不再赘述,本示例中通过滤除靠近终点的轨迹点,在剩余的轨迹点中选择中间点,增加了选择中间点的准确性。再一种可实现的方式中,按照起点到终点的方向,以起点为基点,滤除第一预设数量的轨迹点,并且按照起点到终点的方向,以终点为基点,滤除第二预设数量的轨迹点。例如,目标轨迹点序列中包括20个轨迹点,以第1个轨迹点到第20个轨迹点的方向为车辆行驶方向,将20个轨迹点中的第1个轨迹点作为起点,将20个轨迹点中的第20个轨迹点作为终点,第一预设数量为3,滤除第2-4个轨迹点,第二预设数量为5,滤除第15-19个轨迹点,在剩余的第5-14个轨迹点中选择中间点,选择中间点的方法与第一个示例相同,在此不再赘述。与前两种滤除方式相比,该滤除方式中不仅滤除靠近起点的轨迹点,还滤除靠近终点的轨迹点,在剩余的轨迹点中选择中间点,进一步增加了选择中间点的准确性。

步骤S207、以起点到中间点构成的矢量的方向为车辆当前行驶方向,中间点到终点构成的矢量的方向为车辆目标行驶方向,根据车辆当前行驶方向与车辆目标行驶方向确定车辆转向角度。

步骤S207是实施例一中步骤S105的一种实现方式。以起点到中间点构成的矢量的方向车辆当前行驶方向,以中间点到终点构成的矢量的方向为车辆目标行驶方向,根据车辆当前行驶方向和车辆目标行驶方向确定车辆转向角度,提高了车辆转向角度的准确性,减少了由于道路路网数据发生错误所带来的导航不准确的情况。

在根据车辆当前行驶方向与车辆目标行驶方向确定车辆转向角度时,可通过以下三个示例实现。

第一个示例,以车辆当前行驶方向为指北方向线,计算车辆当前行驶方向与车辆目标行驶方向之间的方位角,根据方位角确定车辆转向角度。

需要说明的是,方位角为指北方向线按顺时针转到目标方向的水平夹角。如图5A所示,图5A为本申请实施例提供的一种车辆转向角度的示意图,图5A中列举两个示例5a.1和5a.2对车辆转向角度进行说明。本示例中以车辆当前行驶方向为指北方向线,车辆目标行驶方向为目标方向,将该方位角作为车辆转向角度,车辆转向角度取值范围0°-360°。

在根据第一个示例确定车辆转向角度之后,该数据处理方法还包括:根据车辆转向角度与车辆转向动作之间的转化关系,生成指示车辆转向动作的导航动作。

其中,车辆转向角度与车辆转向动作之间的转化关系,包括:车辆转向角度位于第一角度范围,车辆转向动作为直行;车辆转向角度位于第二角度范围,车辆转向动作包括右前、右转和右后;车辆转向角度位于第三角度范围,车辆转向动作为调头;车辆转向角度位于第四角度范围,车辆转向动作包括左前、左转和左后;第一角度范围、第二角度范围、第三角度范围和第四角度范围之间相互独立,且第一角度范围、第二角度范围、第三角度范围和第四角度范围之和等于360°。

如图6A所示,图6A为本申请实施例提供的一种车辆转向角度与车辆转向动作转化关系的示意图,第一角度范围为0°-2*°以及3**°-360°,车辆转向角度位于第一角度范围,车辆转向动作为直行。第二角度范围为2*°-1**°,车辆转向角度位于第二角度范围,车辆转向动作包括右前、右转和右后;具体地,车辆转向角度位于2*°-4*°,车辆转向动作为右前,车辆转向角度位于4*°-1**°,车辆转向动作为右转,车辆转向角度位于1**°-180°,车辆转向动作为右后。第三角度范围为180°-1**°,车辆转向角度位于第三角度范围,车辆转向动作为调头。第四角度范围为1**°-3**°,车辆转向角度位于第四角度范围,车辆转向动作包括左前、左转和左后;具体地,车辆转向角度位于1**°-2**°,车辆转向动作为左后,车辆转向角度位于2**°-3**°,车辆转向动作为左转,车辆转向角度位于31*°-33*°,车辆转向动作为右前。可以理解的是,上述图6A中第一角度范围、第二角度范围、第三角度范围和第四角度范围仅是示例性说明,可以由本领域技术人员根据实际需求适当设置,或者通过对大量的车辆实际转向动作与车辆转向角度范围之间的关系进行确定。其中,“*”代表一位从0至9的整数,“**”代表两位数,每一位均为从0至9的整数。

本示例中,根据车辆转向角度与车辆转向动作之间的转化关系,生成指示车辆转向动作的导航动作。进一步地,该导航动作的相应指令或信息可通过语音播放,如图3所示,图3中通过语音播放的方式提醒驾驶员接下来的导航动作。通过语音播报的方式,可和出行对象进行互动,其中车辆转向动作作为最重要的提示信息,其准确性和实时性尤为重要。本示例中通过车辆转向角度与车辆转向动作之间的转化关系,生成指示车辆转向动作的导航动作,提高了导航的准确性,提高出行体验。

第二个示例,计算车辆当前行驶方向与车辆目标行驶方向之间的方向夹角,根据方向夹角确定车辆转向角度。

如图5B所示,图5B为本申请实施例提供的另一种车辆转向角度的示意图,图5B中列举两个示例5b.1和5b.2对车辆转向角度进行说明。本示例中计算车辆当前行驶方向与车辆目标行驶方向之间的方向夹角,将该方向夹角作为车辆转向角度,车辆转向角度取值范围0°-180°。

在根据第二个示例确定车辆转向角度之后,该数据处理方法还包括:根据车辆转向角度与车辆转向动作之间的转化关系,生成指示车辆转向动作的导航动作。

其中,车辆转向角度与车辆转向动作之间的转化关系,包括:车辆转向角度位于第五角度范围,车辆转向动作为直行;车辆转向角度位于第六角度范围,且车辆目标行驶方向在车辆当前行驶方向的右侧,车辆转向动作包括右前、右转和右后;车辆转向角度位于第七角度范围,且车辆目标行驶方向在车辆当前行驶方向的左侧,车辆转向动作为调头;车辆转向角度位于第八角度范围,且车辆目标行驶方向在车辆当前行驶方向的左侧,车辆转向动作包括左前、左转和左后;第五角度范围和第六角度范围之间相互独立,第五角度范围和第六角度范围之和等于180°,且第七角度范围、第八角度范围之和等于第六角度范围。

如图6B所示,图6B为本申请实施例提供的一种车辆转向角度与车辆转向动作转化关系的示意图,第五角度范围为0°-2*°,车辆转向角度位于第五角度范围,无论车辆目标行驶方向在车辆当前行驶方向的左侧还是右侧,车辆转向动作均为直行。第六角度范围为2*°-180°,车辆转向角度位于第六角度范围,且车辆目标行驶方向在车辆当前行驶方向的右侧,车辆转向动作包括右前、右转和右后;具体地,车辆目标行驶方向在车辆当前行驶方向的右侧,车辆转向角度位于2*°-4*°,车辆转向动作为右前,车辆转向角度位于4*°-1**°,车辆转向动作为右转,车辆转向角度位于1**°-180°,车辆转向动作为右后。第七角度范围为1**°-180°,车辆转向角度位于第七角度范围,且车辆目标行驶方向在车辆当前行驶方向的左侧,车辆转向动作为调头。第八角度范围为2*°-1**°,车辆转向角度位于第八角度范围,且车辆目标行驶方向在车辆当前行驶方向的左侧,车辆转向动作包括左前、左转和左后;具体地,车辆目标行驶方向在车辆当前行驶方向的左侧,车辆转向角度位于2*°-4*°,车辆转向动作为左前,车辆转向角度位于4*°-1**°,车辆转向动作为左转,车辆转向角度位于13*°-17*°,车辆转向动作为左后。可以理解的是,上述图6B中第五角度范围、第六角度范围、第七角度范围和第八角度范围仅是示例性说明,可以由本领域技术人员根据实际需求适当设置,或者通过对大量的车辆实际转向动作与车辆转向角度范围之间的关系进行确定。

第三个示例,计算起点到中间点构成的线段,与中间点到终点构成的线段之间的线段夹角,该线段夹角的补角表征车辆转向角度,车辆转向角度取值范围0°-180°。

需要说明的是,方位角为指北方向线按顺时针转到目标方向的水平夹角。如图5C所示,图5C为本申请实施例提供的再一种车辆转向角度的示意图,图5C中列举两个示例5c.1和5c.2对车辆转向角度进行说明。本示例中计算起点到中间点构成的线段,与中间点到终点构成的线段之间的线段夹角,将该线段夹角的补角作为车辆转向角度,车辆转向角度取值范围0°-180°。

在根据第三个示例确定车辆转向角度之后,该数据处理方法还包括:根据车辆转向角度与车辆转向动作之间的转化关系,生成指示车辆转向动作的导航动作。具体转化关系与第二个示例相同,在此不再赘述。

在得到车辆转向角度之后,该数据处理方法还包括:

步骤S208、基于车辆转向角度与路网转向角度的角度差值,确定指示车辆转向动作的导航动作。

在一种可行方式中,路网转向角度通过以下方式确定:获取与车辆行驶轨迹点序列对应的道路路网数据;根据道路路网数据确定路网转向角度。

需要说明的是,本示例对在确定车辆转向角度和路网转向角度时所采用的方法步骤的先后执行顺序不做限制,也可以同时执行确定车辆转向角度的步骤和确定路网转向角度的步骤。

道路路网数据与车辆行驶轨迹点序列相对应,即道路路网数据与车辆行驶轨迹点序列对应同一道路路口。本示例中的路网转向角度可以根据相关技术中根据道路路网数据进行计算得到,本申请实施例对于路网转向角度的具体计算方式不做限制,只要是能够根据道路路网数据确定路网转向角度即可。

本示例中还通过计算车辆转向角度与预先获取的路网转向角度的角度差值,根据角度差值确定指示车辆转向动作的导航动作,在确定导航动作时,不仅考虑根据轨迹点序列确定的车辆转向角度,还考虑根据道路路网数据确定的路网转向角度,从而提高导航的准确性。

可选地,在本申请实施例的一种示例中,步骤S208通过以下方式实现:获取车辆转向角度与预先获取的路网转向角度的角度差值;若角度差值大于预设角度,则根据车辆转向角度与车辆转向动作之间的转化关系,生成指示车辆转向动作的导航动作;若角度差值小于或等于预设角度,则根据路网转向角度与车辆转向动作之间的转化关系,生成指示车辆转向动作的导航动作。

预设角度可以由本领域技术人员根据实际需求适当设置,或者通过对大量的车辆实际转向动作与角度差值之间的关系进行确定,对此本申请实施例不做限制。示例的,预设角度设置为20°,若角度差值大于20°,则说明车辆转向角度和路网转向角度之间差异较大,说明道路路网数据不准确,不再以道路路网数据为依据,而是根据车辆转向角度与车辆转向动作之间的转化关系生成导航动作,提高导航的准确性。若角度差值小于或等于20°,则说明车辆转向角度和路网转向角度之间差异不大,可以根据车辆转向角度或路网转向角度与车辆转向动作之间的转化关系确定导航动作。

需要说明的是,角度差值小于或等于预设角度,虽然说明车辆转向角度和路网转向角度之间差异不大,但存在一种情况是:车辆转向角度对应的车辆转向动作和路网转向角度对应的车辆转向动作不相同,例如,车辆转向角度对应的车辆转向动作是右前,路网转向角度对应的车辆转向动作是直行。在车辆转向角度和路网转向角度之间差异不大时,一方面说明道路路网数据较准确,另一方面,道路路网数据覆盖全面。因此在此种情况下,本示例以道路路网数据为准,根据路网转向角度与车辆转向动作之间的转化关系,生成导航动作,提高了导航的准确性。

本实施例的数据处理方法可以由任意适当的具有数据处理能力的电子设备执行,包括但不限于:服务器、PC机、移动终端等。

实施例三、

本申请实施例三基于实施例一和实施例二的方案,列举一个具体的示例对本申请实施例中对数据处理进行说明,具体如下。如图7所示,图7为本申请实施例提供的另一种数据处理方法的流程图,通过以下步骤S701-步骤S708实现数据处理。

步骤S701、采集GPS轨迹数据。

GPS轨迹数据表征车辆在道路行驶时所产生的轨迹数据。

步骤S702、对采集的GPS轨迹数据进行轨迹聚合。

将多个GPS轨迹数据进行轨迹聚合,获得连续的车辆行驶轨迹点序列。

步骤S703、模板匹配选点。

车辆行驶轨迹点序列中包括多个轨迹点,在多个轨迹点中选择起点、终点和中间点,具体的实现方式与上述实施例一中的步骤S101-步骤S104相同,在此不再赘述。

本示例中的轨迹模板可以理解为道路路口处的轨迹走势,需要根据预设规则进行定义,因为不同的道路路口对应的道路轨迹形状也不同,在根据轨迹模板对车辆行驶轨迹点序列进行截取时的截取方式也不同,具体地,每个道路路口如何截取,可根据具体的策略进行选择,示例地,从预设的轨迹模板中,获得与道路轨迹形状相匹配的轨迹模板,使用轨迹模板对道路轨迹形状进行截取,获得截取后的轨迹片段对应的目标轨迹点序列。可以理解的是,轨迹模板可以进行规则定义,在利用轨迹模板对道路轨迹形状进行截取的过程中,可以对轨迹模板进行不断的更新。

本示例中根据轨迹模板对车辆行驶轨迹点序列进行截取得到目标轨迹点序列,可以应对不同的道路路口和轨迹形状,并且截取结果的解释性和截取效果可控性比较强,提高了截取得到目标轨迹点序列的准确性。然后再截断得到的目标轨迹点序列上选择起点、终点和中间点,在选择中间点时,通过计算多个轨迹点与起点和终点构成的夹角,将多个轨迹点对应的多个夹角中最大夹角对应的轨迹点确定为中间点,可以减小轨迹点序列和道路路网数据发生偏离所带来的误差,降低道路路网数据发生错误对轨迹选点的影响,然后根据轨迹支撑点计算车辆转向角度,根据车辆转向角度转化为车辆转向动作,提高了车辆转向动作的准确性。

步骤S704、确定车辆转向动作。

根据车辆转向角度的大小,映射到车辆转向动作,具体实现方式与实施例二中的图6A和图6B相同,在此不再赘述。

步骤S705、获取道路路网数据。

道路路网数据与车辆行驶轨迹点序列相对应,即道路路网数据与车辆行驶轨迹点序列对应同一道路路口。

步骤S706、根据道路路网数据确定路网转向动作。

根据道路路网数据确定路网转向角度,路网转向角度与路网转向动作之间具有映射关系,具体映射关系可以参照图6A和图6B中车辆转向角度映射到车辆转向动作的映射方式,在此不再赘述。

需要说明的是,步骤S705-步骤S706与步骤S701-步骤S704为并行方案,在执行该数据处理方法时不分先后顺序,可以同时执行,对此本申请实施例不做限制。

步骤S707、进行融合决策。

根据车辆转向角度和路网转向角度之间的角度差异对车辆转向动作和路网转向动作进行融合,具体融合决策可以与实施例二中步骤S208的实现方式相同,在此不再赘述。

步骤S708、最终的车辆转向动作。

车辆转向动作也可以理解为导航动作。根据步骤S707中融合决策结果确定道路路口的最终的车辆转向动作,具体的实现方式与实施例二中根据角度差值与预设角度之间的关系,确定最终导航动作相同,在此不再赘述。根据最终导航动作发布道路路口动作,如图3所示,发布的道路路口动作为“98米右转进入广顺南大街”。

相关技术中,导航动作的计算主要依赖道路路网数据。但是道路路网数据在制作过程中的制作工艺和数据采集方式比较复杂,容易出现道路路网数据无法正确反应真实的道路形状的情况。而基于单一的道路路网数据计算导航动作时,容易导致导航动作出现错误,降低了导航的准确性,给驾驶员带来错误的动作引导,严重影响出行体验。本示例中,在多个轨迹点中选择三个点(即起点、中间点和终点)作为支撑点,以起点到中间点构成的矢量为指北方向线,计算指北方向线与中间点到终点构成的矢量之间的方位角,该方位角为车辆转向角度。并基于车辆转向角度转化为车辆转向动作,可以缓解由于道路路网错误所导致的路网动作计算错误的问题,有效提高了导航的正确性和实时性,提升了用户体验。

本实施例的数据处理方法可以由任意适当的具有数据处理能力的电子设备执行,包括但不限于:服务器、PC机、移动终端等。

实施例四、

基于上述实施例一至实施例三描述的任一数据处理方法,本申请实施例还提供了一种导航方法,如图8所示,图8为本申请实施例提供的一种导航方法的流程图,通过以下步骤S100-步骤S200实现。

步骤S100、基于起点和终点,规划导航路线。

其中,所述起点和所述终点可以为通过前述实施例中所描述的方案获得的起点和终点。也即,为前述实施例中的所述起点和所述终点。

步骤S200、基于预先生成的导航动作,确定导航路线对应的导航动作数据。

其中,导航动作数据可以为任意的可指示导航动作的数据,包括但不限于语音数据、文字或图像数据等等。

所述导航动作通过前述实施例一至实施例三描述的任一数据处理方法预先生成。通过前述实施例中所描述的方式生成的导航动作较为准确,从而提高了导航的准确性,也提升了用户体验。

实施例五、

基于上述实施例一至实施例三描述的任一数据处理方法,本申请实施例提供了一种数据处理装置,如图9所示,图9为本申请实施例提供的一种数据处理装置,数据处理装置80包括:第一获得模块801,用于根据车辆行驶轨迹点序列,获得对应的道路轨迹形状;第二获得模块802,用于从预设的轨迹模板中,获得与道路轨迹形状相匹配的轨迹模板;截取模块803,用于使用轨迹模板对道路轨迹形状进行截取,获得截取后的轨迹片段及轨迹片段对应的目标轨迹点序列;第一确定模块804,用于确定目标轨迹点序列的起点、终点和中间点,其中,中间点为目标轨迹点序列中与车辆转向角度相关的轨迹点;第二确定模块805,用于根据起点、终点和中间点确定车辆转向角度。

可选地,在本申请实施例的一种示例中,第一确定模块804还用于确定目标轨迹点序列中按时间顺序排序在首位和末位的轨迹点为起点和终点;根据目标轨迹点序列中除起点和终点外的轨迹点分别与起点和终点之间的关系,选取中间点。

可选地,在本申请实施例的一种示例中,第一确定模块804还用于针对目标轨迹点序列中除起点和终点外的每个轨迹点,计算起点到轨迹点构成的线段与轨迹点到终点构成的线段之间的夹角;根据每个轨迹点对应的夹角,得到多个轨迹点对应的多个夹角;将多个轨迹点对应的多个夹角中最大夹角对应的轨迹点确定为中间点。

可选地,在本申请实施例的一种示例中,第一确定模块804还用于在多个轨迹点中,按照起点到终点的方向,以起点为基点,滤除第一预设数量的轨迹点;和/或,按照终点到起点的方向,以终点为基点,滤除第二预设数量的轨迹点;针对目标轨迹点序列中滤除第一预设数量的轨迹点,和/或,滤除第二预设数量的轨迹点之后的每个轨迹点,计算起点到轨迹点构成的线段与轨迹点到终点构成的线段之间的夹角。

可选地,在本申请实施例的一种示例中,第二确定模块805还用于以起点到中间点构成的矢量的方向为车辆当前行驶方向,中间点到终点构成的矢量的方向为车辆目标行驶方向,根据车辆当前行驶方向与车辆目标行驶方向确定车辆转向角度。

可选地,在本申请实施例的一种示例中,第二确定模块805还用于以车辆当前行驶方向为指北方向线,计算车辆当前行驶方向与车辆目标行驶方向之间的方位角,根据方位角确定车辆转向角度。

可选地,在本申请实施例的一种示例中,数据处理装置80还包括生成模块,生成模块用于根据车辆转向角度与车辆转向动作之间的转化关系,生成指示车辆转向动作的导航动作。

可选地,在本申请实施例的一种示例中,第二确定模块805还用于计算车辆当前行驶方向与车辆目标行驶方向之间的方向夹角,根据方向夹角确定车辆转向角度。

可选地,在本申请实施例的一种示例中,数据处理装置80还包括第三确定模块,第三确定模块用于基于车辆转向角度与路网转向角度的角度差值,确定指示车辆转向动作的导航动作。

可选地,在本申请实施例的一种示例中,第三确定模块还用于获取车辆转向角度与路网转向角度的角度差值;若角度差值大于预设角度,则根据车辆转向角度与车辆转向动作之间的转化关系,生成指示车辆转向动作的导航动作;若角度差值小于或等于预设角度,则根据路网转向角度与车辆转向动作之间的转化关系,生成指示车辆转向动作的导航动作。

可选地,在本申请实施例的一种示例中,数据处理装置80还包括第三获得模块,第三获得模块用于获取车辆行驶过程中产生的GPS轨迹数据;将GPS轨迹数据进行轨迹聚合,获得连续的车辆行驶轨迹点序列。

本申请实施例的数据处理装置用于实现前述多个方法实施例中相应的数据处理方法,并具有相应的方法实施例的有益效果,在此不再赘述。此外,本申请实施例的数据处理装置中的各个模块的功能实现均可参照前述方法实施例中的相应部分的描述,在此亦不再赘述。

实施例六、

基于上述实施例一至实施例三描述的任一数据处理方法,本申请实施例提供了一种电子设备,需要说明的,本申请实施例的数据处理方法可以由任意适当的具有数据处理能力的电子设备执行,包括但不限于:服务器、移动终端(如手机、PAD等)和PC机等。如图10所示,图10为本申请实施例提供的一种电子设备的结构图。本申请具体实施例并不对电子设备的具体实现做限定。该电子设备90可以包括:处理器(processor)902、通信接口(Communications Interface)904、存储器(memory)906、以及通信总线908。

其中:处理器902、通信接口904、以及存储器906通过通信总线908完成相互间的通信。

通信接口904,用于与其它电子设备或服务器进行通信。

处理器902,用于执行计算机程序910,具体可以执行上述数据处理方法实施例中的相关步骤。

具体地,计算机程序910可以包括计算机程序代码,该计算机程序代码包括计算机操作指令。

处理器902可能是CPU,或者是特定集成电路ASIC(Application SpecificIntegrated Circuit),或者是被配置成实施本申请实施例的一个或多个集成电路。智能设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个CPU;也可以是不同类型的处理器,如一个或多个CPU以及一个或多个ASIC。

存储器906,用于存放计算机程序910。存储器906可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。

程序910中各步骤的具体实现可以参见上述数据处理方法实施例中的相应步骤和单元中对应的描述,在此不赘述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备和模块的具体工作过程,可以参考前述方法实施例中的对应过程描述,在此不再赘述。

实施例六、

基于上述实施例一至实施例三所描述的数据处理方法,本申请实施例提供了一种计算机存储介质,其存储有计算机程序,该计算机程序被处理器执行时实现如实施例一至实施例三所描述的数据处理方法。

需要指出,根据实施的需要,可将本申请实施例中描述的各个部件/步骤拆分为更多部件/步骤,也可将两个或多个部件/步骤或者部件/步骤的部分操作组合成新的部件/步骤,以实现本申请实施例的目的。

上述根据本申请实施例的方法可在硬件、固件中实现,或者被实现为可存储在记录介质(诸如CD ROM、RAM、软盘、硬盘或磁光盘)中的软件或计算机代码,或者被实现通过网络下载的原始存储在远程记录介质或非暂时机器可读介质中并将被存储在本地记录介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件(诸如ASIC或FPGA)的记录介质上的这样的软件处理。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件(例如,RAM、ROM、闪存等),当软件或计算机代码被计算机、处理器或硬件访问且执行时,实现在此描述的数据处理方法。此外,当通用计算机访问用于实现在此示出的数据处理方法的代码时,代码的执行将通用计算机转换为用于执行在此示出的数据处理方法的专用计算机。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例地单元及方法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请实施例的范围。

以上实施方式仅用于说明本申请实施例,而并非对本申请实施例的限制,有关技术领域的普通技术人员,在不脱离本申请实施例的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本申请实施例的范畴,本申请实施例的专利保护范围应由权利要求限定。

技术分类

06120114695586