一种多路径中位置点拼合方法、装置、设备及存储介质与流程

文档序号:31631092发布日期:2022-09-24 02:00阅读:61来源:国知局
一种多路径中位置点拼合方法、装置、设备及存储介质与流程

1.本技术涉及路径优化技术领域,更为具体来说,本技术涉及一种多路径中位置点拼合方法、装置、设备及存储介质。


背景技术:

2.目前,货车司机经验路线是在货车运输导航服务中为用户提供车友实时走过的由a地到b地的路线。实时查询车友的路线多为长途,起终点距离较大,不一定能百分之百匹配到起点为a地,终点为b地的完整路线,但可以分段查到与主路方向一致的路线(如:从s市到e市)以及从主路到具体终点地址位置b的路线、从具体起点位置a到主路的路线。在此基础上,就需要将多个车友路线合理拼成一条路线,从而为货车司机提供更有效的指引。


技术实现要素:

3.基于上述技术问题,本发明旨在确定各路径的有序线段之间的交点,并选取最优交点,基于所述最优交点拼合得到目标路径。
4.本发明第一方面提供了一种多路径中位置点拼合方法,所述方法包括:获取多条路径;提取所述多条路径中每条路径的位置点的坐标;根据所述每条路径的位置点的坐标将每条路径中相邻位置点组成有序线段;确定各路径的有序线段之间的交点,并选取最优交点;基于所述最优交点拼合得到目标路径。
5.在本发明的一些实施例中,在所述多条路径为两条时,根据所述每条路径的位置点的坐标将每条路径中相邻位置点组成有序线段,包括:确定第一条路径的始位置点和第二条路径的终位置点;针对第一条路径,将从所述始位置点开始的每两个相邻点组成有序线段,形成第一线段组合;针对第二条路径,根据所述终位置点的方向,将每两个相邻点组成有序线段,形成第二线段组合。
6.在本发明的一些实施例中,所述确定各路径的有序线段之间的交点,包括:将从所述始位置点到其相邻点组成的有序线段作为第一线段;求所述第一线段与所述第二线段组合中每一线段的交点;求第一线段组合中除所述第一线段外的线段与所述第二线段组合中每一线段的交点;将求得的所有交点组成交点集合。
7.在本发明的一些实施例中,所述选取最优交点的方法包括:从所述交点集合中选取任意一个交点作为当前交点;计算从所述始位置点到所述当前交点之间每两点的距离累计和,作为第一累计
和;计算从所述当前交点到所述终位置点之间每两点的距离累计和,作为第二累计和;遍历所述交点集合中每一个交点,将所述第一累计和与所述第二累计和相加得到的数值最小时对应的交点作为最优交点。
8.在本发明的一些实施例中,所述基于所述最优交点拼合得到目标路径,包括:拼合从所述始位置点到所述最优交点、从所述最优交点到所述终位置点,得到拼合后路径;将所述拼合后路径作为目标路径。
9.在本发明的一些实施例中,所述方法还包括:若所述交点集合为空,则在所述第一条路径上找到距离所述第二条路径中最近的点,并在所述第二条路径上找到距离所述第一条路径最近的点;根据两个所述最近的点选取待拼合位置点;将所述待拼合位置点拼合。
10.在本发明的一些实施例中,所述根据两个所述最近的点选取待拼合位置点,包括:将在所述第一条路径上找到的距离所述第二条路径中最近的点作为第一候选点;以第一候选点为基准间隔预设距离向所述第一候选点两边方向选取预设数目个候选点;将在所述第二条路径上找到的距离所述第一条路径中最近的点作为第二候选点;以第二候选点为基准间隔预设距离向所述第二候选点两边方向选取预设数目个候选点;将第一候选点、第二候选点和两条路径上选取的预设数目个候选点作为待拼合位置点。
11.本发明第二方面提供一种多路径中位置点拼合装置,所述装置包括:获取模块,用于获取多条路径;提取模块,用于提取所述多条路径中每条路径的位置点的坐标;线段模块,用于根据所述每条路径的位置点的坐标将每条路径中相邻位置点组成有序线段;交点模块,用于确定各路径的有序线段之间的交点,并选取最优交点;拼合模块,用于基于预设始位置点、预设终位置点和所述最优交点拼合得到目标路径。
12.本发明第三方面提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机可读指令,计算机可读指令被处理器执行时,使得处理器执行以下步骤:获取多条路径;提取所述多条路径中每条路径的位置点的坐标;根据所述每条路径的位置点的坐标将每条路径中相邻位置点组成有序线段;确定各路径的有序线段之间的交点,并选取最优交点;基于所述最优交点拼合得到目标路径。
13.本发明第四方面提供了一种计算机可读存储介质,其上存储有计算机程序,该计
算机程序被处理器执行时实现以下步骤:获取多条路径;提取所述多条路径中每条路径的位置点的坐标;根据所述每条路径的位置点的坐标将每条路径中相邻位置点组成有序线段;确定各路径的有序线段之间的交点,并选取最优交点;基于所述最优交点拼合得到目标路径。
14.本技术实施例中提供的技术方案,至少具有如下技术效果或优点:本技术先获取多条路径,提取所述多条路径中每条路径的位置点的坐标,根据所述每条路径的位置点的坐标将每条路径中相邻位置点组成有序线段,确定各路径的有序线段之间的交点,并选取最优交点,最后基于所述最优交点拼合得到目标路径,这里得到的目标路径所需要行走的路线距离更短,即路径得到优化,从而为司机提供更有效的指引,省却各种车辆运行的实际场景中的人力、物力及时间成本,进而能提升车辆的运行效率。
15.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。
附图说明
16.通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本技术的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:图1示出了本技术一示例性实施例中的多路径中位置点拼合方法步骤示意图;图2示出了本技术一示例性实施例中获取的两条路径示意图;图3示出了本技术一示例性实施例中有序线段示意图;图4示出了本技术一示例性实施例中从a点到下一个交点距离示意图;图5示出了本技术一示例性实施例中多路径中位置点拼合方法流程图;图6示出了本技术一示例性实施例中的多路径中位置点拼合装置结构示意图;图7示出了本技术一示例性实施例所提供的一种计算机设备的结构示意图。
具体实施方式
17.以下,将参照附图来描述本技术的实施例。但是应该理解的是,这些描述只是示例性的,而并非要限制本技术的范围。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本技术的概念。对于本领域技术人员来说显而易见的是,本技术可以无需一个或多个这些细节而得以实施。在其他的例子中,为了避免与本技术发生混淆,对于本领域公知的一些技术特征未进行描述。
18.应予以注意的是,这里所使用的术语仅是为了描述具体实施例,而非意图限制根据本技术的示例性实施例。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式。此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在所述特征、整体、步骤、操作、元件和/或组件,但不排除存在或附加一个或多个其他特征、整体、步骤、操作、元件、组件和/或它们的组合。
19.现在,将参照附图更详细地描述根据本技术的示例性实施例。然而,这些示例性实
施例可以多种不同的形式来实施,并且不应当被解释为只限于这里所阐述的实施例。附图并非是按比例绘制的,其中为了清楚表达的目的,可能放大了某些细节,并且可能省略了某些细节。图中所示出的各种区域、层的形状以及它们之间的相对大小、位置关系仅是示例性的,实际中可能由于制造公差或技术限制而有所偏差,并且本领域技术人员根据实际所需可以另外设计具有不同形状、大小、相对位置的区域/层。
20.下面结合说明书附图1-附图7给出几个实施例来描述根据本技术的示例性实施方式。需要注意的是,下述应用场景仅是为了便于理解本技术的精神和原理而示出,本技术的实施方式在此方面不受任何限制。相反,本技术的实施方式可以应用于适用的任何场景。
21.实施例1:本实施例提供了一种多路径中位置点拼合方法,如图1所示,所述方法包括:s1、获取多条路径;s2、提取所述多条路径中每条路径的位置点的坐标;s3、根据所述每条路径的位置点的坐标将每条路径中相邻位置点组成有序线段;s4、确定各路径的有序线段之间的交点,并选取最优交点;s5、基于所述最优交点拼合得到目标路径。
22.在一种具体的实现方式中,在所述多条路径为两条时,根据所述每条路径的位置点的坐标将每条路径中相邻位置点组成有序线段,包括:确定第一条路径的始位置点和第二条路径的终位置点;针对第一条路径,将从所述始位置点开始的每两个相邻点组成有序线段,形成第一线段组合;针对第二条路径,根据所述终位置点的方向,将每两个相邻点组成有序线段,形成第二线段组合。
23.在一种具体的实现方式中,所述确定各路径的有序线段之间的交点,包括:将从所述始位置点到其相邻点组成的有序线段作为第一线段;求所述第一线段与所述第二线段组合中每一线段的交点;求第一线段组合中除所述第一线段外的线段与所述第二线段组合中每一线段的交点;将求得的所有交点组成交点集合。
24.在一种具体的实现方式中,所述选取最优交点的方法包括:从所述交点集合中选取任意一个交点作为当前交点;计算从所述始位置点到所述当前交点之间每两点的距离累计和,作为第一累计和;计算从所述当前交点到所述终位置点之间每两点的距离累计和,作为第二累计和;遍历所述交点集合中每一个交点,将所述第一累计和与所述第二累计和相加得到的数值最小时对应的交点作为最优交点。
25.在一种具体的实现方式中,所述基于所述最优交点拼合得到目标路径,包括:拼合从所述始位置点到所述最优交点、从所述最优交点到所述终位置点,得到拼合后路径;将所述拼合后路径作为目标路径。这里的目标路径更为完整,距离也更短,节省了行车时间。
26.在一种具体的实现方式中,所述方法还包括:若所述交点集合为空,则在所述第一条路径上找到距离所述第二条路径中最近的点,并在所述第二条路径上找到距离所述第一条路径最近的点;根据两个所述最近的点选取待拼合位置点;将所述待拼合位置点拼合。
27.在一种具体的实现方式中,所述根据两个所述最近的点选取待拼合位置点,包括:将在所述第一条路径上找到的距离所述第二条路径中最近的点作为第一候选点;以第一候选点为基准间隔预设距离向所述第一候选点两边方向选取预设数目个候选点;将在所述第二条路径上找到的距离所述第一条路径中最近的点作为第二候选点;以第二候选点为基准
((y1
ꢀ‑ꢀ
y2) * (x3
ꢀ‑ꢀ
x4)
ꢀ‑ꢀ
(x1
ꢀ‑ꢀ
x2) * (y3
ꢀ‑ꢀ
y4)),若求得的x,y的值满足,(x
ꢀ‑
x1) * (x-x2) 《=0,(x-x3) * (x
ꢀ‑ꢀ
x4) 《=0,(y
ꢀ‑ꢀ
y1) * (y
ꢀ‑
y2) 《=0,(y
ꢀ‑
y3) * (y
ꢀ‑ꢀ
y4) 《=0,则m与n存在交点,记为p(x,y)。当然在判断交点是否存在时,线段延长线上的交点认为无效。
38.在一种具体的实现方式中,所述选取最优交点的方法包括:从所述交点集合中选取任意一个交点作为当前交点;计算从所述始位置点到所述当前交点之间每两点的距离累计和,作为第一累计和;计算从所述当前交点到所述终位置点之间每两点的距离累计和,作为第二累计和;遍历所述交点集合中每一个交点,将所述第一累计和与所述第二累计和相加得到的数值最小时对应的交点作为最优交点。接着上述实例表述,起点a开始到p点,每两个点的距离累计之和用disa表示,disa = d(a,n) + d(n,n+1) +
ꢀ…ꢀ
+ d(k,p),如图4所示,a到下一个点(pn)的距离可以用d(a,n)表示;从p点开始到终点b,每两个点的距离累计之和用disb表示,则disb = d(p,m) + d(m,m+1) +
ꢀ…ꢀ
+ d(j,b),设sum = disa + disb,使sum的值最小的交点p点,则为最优交点p,需要说明的是,因为要确定最优交点,可以假设有多个p,所以图4中用pn、pn+1表示。确定最优交点p后,输出s1的子序列即a到p的部分,输出s2的子序列即p到b的部分。
39.第五步,基于所述最优交点拼合得到目标路径。
40.在一种具体的实现方式中,所述方法还包括:若所述交点集合为空,则在所述第一条路径上找到距离所述第二条路径中最近的点,并在所述第二条路径上找到距离所述第一条路径最近的点;根据两个所述最近的点选取待拼合位置点;将所述待拼合位置点拼合。
41.在一种具体的实现方式中,所述根据两个所述最近的点选取待拼合位置点,包括:将在所述第一条路径上找到的距离所述第二条路径中最近的点作为第一候选点;以第一候选点为基准间隔预设距离向所述第一候选点两边方向选取预设数目个候选点;将在所述第二条路径上找到的距离所述第一条路径中最近的点作为第二候选点;以第二候选点为基准间隔预设距离向所述第二候选点两边方向选取预设数目个候选点;将第一候选点、第二候选点和两条路径上选取的预设数目个候选点作为待拼合位置点。这里预设数目可选5、6、7个,根据具体路线而定。这里可参照图5,如图5所示,已知轨迹s1 和s2、起点a和终点b,将s1 和s2转化为线段序列l1和l2,而集合d表示l1和l2的交点,判断集合d是否为空,若不为空则根据上述方法确定最优交点的方法得到拼合的路径或者说轨迹,但若为空,则找到最近的两个点c1和c2,在c1和c2两侧确定预设距离找到其它候选点,最后将这些包括c1和c2及所述其它候选点的点拼合形成有效路径。
42.本技术先获取多条路径,提取所述多条路径中每条路径的位置点的坐标,根据所述每条路径的位置点的坐标将每条路径中相邻位置点组成有序线段,确定各路径的有序线段之间的交点,并选取最优交点,最后基于所述最优交点拼合得到目标路径,这里得到的目标路径所需要行走的路线距离更短,从而为司机提供更有效的指引,省却各种车辆运行的实际场景中的人力、物力及时间成本,进而能提升车辆的运行效率。
43.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。
44.实施例3:本实施例提供了一种多路径中位置点拼合装置,如图6所示,所述装置包括:
获取模块,用于获取多条路径;提取模块,用于提取所述多条路径中每条路径的位置点的坐标;线段模块,用于根据所述每条路径的位置点的坐标将每条路径中相邻位置点组成有序线段;交点模块,用于确定各路径的有序线段之间的交点,并选取最优交点;拼合模块,用于基于预设始位置点、预设终位置点和所述最优交点拼合得到目标路径。
45.可以理解的是,所述装置还可以配置必要的硬件,如gps定位器件、导航服务的辅助器件等等,在此不做具体限定。
46.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。
47.还需要强调的是,本技术实施例中提供的系统可以基于人工智能技术对相关的数据进行获取和处理。其中,人工智能(artificial intelligence,ai)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、机器人技术、生物识别技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
48.下面请参考图7,其示出了本技术的一些实施方式所提供的一种计算机设备的示意图。如图7所示,所述计算机设备2包括:处理器200,存储器201,总线202和通信接口203,所述处理器200、通信接口203和存储器201通过总线202连接;所述存储器201中存储有可在所述处理器200上运行的计算机程序,所述处理器200运行所述计算机程序时执行本技术前述任一实施方式所提供的多路径中位置点拼合方法。
49.其中,存储器201可能包含高速随机存取存储器(ram:random access memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口203(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网、广域网、本地网、城域网等。
50.总线202可以是isa总线、pci总线或eisa总线等。所述总线可以分为地址总线、数据总线、控制总线等。其中,存储器201用于存储程序,所述处理器200在接收到执行指令后,执行所述程序,前述本技术实施例任一实施方式揭示的所述多路径中位置点拼合方法可以应用于处理器200中,或者由处理器200实现。
51.处理器200可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器200中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器200可以是通用处理器,包括中央处理器(central processing unit,简称cpu)、网络处理器(network processor,简称np)等;还可以是数字信号处理器(dsp)、专用集成电路(asic)、现成可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本技术实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理
器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器201,处理器200读取存储器201中的信息,结合其硬件完成上述方法的步骤。
52.本技术实施方式还提供一种与前述实施方式所提供的多路径中位置点拼合方法对应的计算机可读存储介质,其上存储有计算机程序,所述计算机程序在被处理器运行时,会执行前述任意实施方式所提供的多路径中位置点拼合方法。
53.另外,所述计算机可读存储介质的例子还可以包括,但不限于相变内存 (pram)、静态随机存取存储器 (sram)、动态随机存取存储器 (dram)、其他类型的随机存取存储器 (ram)、只读存储器 (rom)、电可擦除可编程只读存储器 (eeprom)、快闪记忆体或其他光学、磁性存储介质,在此不再一一赘述。
54.本技术的上述实施例提供的计算机可读存储介质与本技术实施例提供的空分复用光网络中量子密钥分发信道分配方法出于相同的发明构思,具有与其存储的应用程序所采用、运行或实现的方法相同的有益效果。
55.本技术实施方式还提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现前述任意实施方式所提供的多路径中位置点拼合方法的步骤,包括:获取多条路径;提取所述多条路径中每条路径的位置点的坐标;根据所述每条路径的位置点的坐标将每条路径中相邻位置点组成有序线段;确定各路径的有序线段之间的交点,并选取最优交点;基于所述最优交点拼合得到目标路径。
56.需要说明的是:在此提供的算法和显示不与任何特定计算机、虚拟装置或者其它设备有固有相关。各种通用装置也可以与基于在此的示教一起使用。根据上面的描述,构造这类装置所要求的结构是显而易见的。此外,本技术也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本技术的内容,并且上面对特定语言所做的描述是为了披露本技术的最佳实施方式。在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本技术的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
57.类似地,应当理解,为了精简本技术并帮助理解各个发明方面中的一个或多个,在上面对本技术的示例性实施例的描述中,本技术的各个特征有时被一起分组到单个实施例、图或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本技术要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本技术的单独实施例。
58.本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书中公开的每个特征可以由提供相同、等同或相似目
的的替代特征来代替。
59.本技术的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器( dsp )来实现根据本技术实施例的虚拟机的创建装置中的一些或者全部部件的一些或者全部功能。本技术还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序。实现本技术的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
60.以上所述,仅为本技术较佳的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以所述权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1