CN116958308A - 一种路口面边线的修正方法及相关装置 - Google Patents
一种路口面边线的修正方法及相关装置 Download PDFInfo
- Publication number
- CN116958308A CN116958308A CN202310475921.2A CN202310475921A CN116958308A CN 116958308 A CN116958308 A CN 116958308A CN 202310475921 A CN202310475921 A CN 202310475921A CN 116958308 A CN116958308 A CN 116958308A
- Authority
- CN
- China
- Prior art keywords
- road
- correction
- point
- intersection
- edge
- 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
- 238000012937 correction Methods 0.000 title claims abstract description 355
- 238000000034 method Methods 0.000 title claims abstract description 90
- 238000012545 processing Methods 0.000 claims description 42
- 238000009499 grossing Methods 0.000 claims description 20
- 230000008569 process Effects 0.000 claims description 18
- 238000004590 computer program Methods 0.000 claims description 14
- 238000003780 insertion Methods 0.000 claims description 3
- 230000037431 insertion Effects 0.000 claims description 3
- 239000010931 gold Substances 0.000 claims description 2
- 229910052737 gold Inorganic materials 0.000 claims description 2
- 230000000007 visual effect Effects 0.000 abstract description 8
- 238000010586 diagram Methods 0.000 description 19
- 238000005516 engineering process Methods 0.000 description 12
- 238000013473 artificial intelligence Methods 0.000 description 8
- 230000000694 effects Effects 0.000 description 8
- 230000006870 function Effects 0.000 description 8
- 230000002159 abnormal effect Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
- G06T11/203—Drawing of straight lines or curves
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3804—Creation or updating of map data
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Automation & Control Theory (AREA)
- Navigation (AREA)
- Instructional Devices (AREA)
Abstract
本申请实施例公开了一种路口面边线的修正方法及相关装置,可应用地图领域,该方法先基于待修正的初始路口面边线的边线起始点和边线终止点,找到与该初始路口面边线关联的参考道路,然后,从参考道路包括的道路边线中选出与初始路口面边线所处方向相匹配的修正道路边线,进而基于所选出的修正道路边线确定修正路口面边线;如此确定出的修正路口面边线可以与初始路口面边线关联的参考道路的道路边线较好地贴合,从而能够更准确地反映所关联的参考道路交叉位置处的轮廓形状,有助于使其所属的路口面的整体形状更准确,提高该路口面的整体视觉效果。
Description
技术领域
本申请涉及地图技术领域,尤其涉及一种路口面边线的修正方法及相关装置。
背景技术
目前,很多导航功能(如车道级导航)均需要基于高精度地图数据实现,但是受到获取成本高等因素的限制,高精度地图数据的覆盖面积有限。为了使高精度地图数据未覆盖的区域能够达到近似高精度地图的效果,通常需要采用相关算法根据标准精度地图数据生成较高精度的道路元素,路口面即是所需生成的道路元素之一,其在地图中表示路口所在的空间区域。
然而,采用相关算法生成的路口面普遍存在形状不准确的问题,例如所生成的路口面覆盖区域过大、与相关的道路难以较好地贴合等等。而之所以出现上述问题,是因为相关算法通常直接采用贝塞尔曲线连接路口面上属于不同道路的相邻边界点,得到对应的路口面边线,而如此得到的路口面边线通常难以准确反映相关道路交叉位置处的轮廓形状。
发明内容
本申请实施例提供了一种路口面边线的修正方法及相关装置,能够保证所生成的路口面边线准确地反映相关道路交叉位置处的轮廓形状,从而提高路口面的整体视觉效果。
本申请第一方面提供了一种路口面边线的修正方法,所述方法包括:
针对待修正的初始路口面边线,确定所述初始路口面边线的边线起始点所属的第一道路、以及所述初始路口面边线的边线终止点所属的第二道路;
在所述第一道路的道路起始点和道路终止点中,确定距所述初始路口面边线所属的路口面最近的点为修正起始点;在所述第二道路的道路起始点和道路终止点中,确定距所述路口面最近的点为修正终止点;
基于所述修正起始点和所述修正终止点,确定边线修正路径、以及所述边线修正路径包括的各条参考道路的相对方向信息;所述边线修正路径包括与所述初始路口面边线关联的各条参考道路,所述参考道路的相对方向信息用于指示所述参考道路的方向与基准方向间的关系,所述基准方向根据所述修正起始点和所述修正终止点确定;
针对所述边线修正路径中每条参考道路,根据所述参考道路的相对方向信息,从所述参考道路包括的道路边线中选择所述参考道路的修正道路边线;
根据所述边线修正路径中各条参考道路的修正道路边线和相对方向信息,确定所述初始路口面边线对应的修正路口面边线。
本申请第二方面提供了一种路口面边线的修正装置,所述装置包括:
道路确定模块,用于针对待修正的初始路口面边线,确定所述初始路口面边线的边线起始点所属的第一道路、以及所述初始路口面边线的边线终止点所属的第二道路;
修正点确定模块,用于在所述第一道路的道路起始点和道路终止点中,确定距所述初始路口面边线所属的路口面最近的点为修正起始点;在所述第二道路的道路起始点和道路终止点中,确定距所述路口面最近的点为修正终止点;
寻路模块,用于基于所述修正起始点和所述修正终止点,确定边线修正路径、以及所述边线修正路径包括的各条参考道路的相对方向信息;所述边线修正路径包括与所述初始路口面边线关联的各条参考道路,所述参考道路的相对方向信息用于指示所述参考道路的方向与基准方向间的关系,所述基准方向根据所述修正起始点和所述修正终止点确定;
道路边线确定模块,用于针对所述边线修正路径中每条参考道路,根据所述参考道路的相对方向信息,从所述参考道路包括的道路边线中选择所述参考道路的修正道路边线;
修正模块,用于根据所述边线修正路径中各条参考道路的修正道路边线和相对方向信息,确定所述初始路口面边线对应的修正路口面边线。
本申请第三方面提供了一种计算机设备,所述设备包括处理器和存储器:
所述存储器用于存储计算机程序;
所述处理器用于根据所述计算机程序,执行如上述第一方面所述的路口面边线的修正方法的步骤。
本申请第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机程序,所述计算机程序用于执行上述第一方面所述的路口面边线的修正方法的步骤。
本申请第五方面提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述第一方面所述的路口面边线的修正方法的步骤。
从以上技术方案可以看出,本申请实施例具有以下优点:
本申请实施例提供了一种路口面边线的修正方法,在该方法中,针对待修正的初始路口面边线,先确定该初始路口面边线的边线起始点所属的第一道路、以及该初始路口面边线的边线终止点所属的第二道路,然后,在第一道路的道路起始点和道路终止点中,确定距该初始路口面边线所属的路口面最近的点为修正起始点,并在第二道路的道路起始点和道路终止点中,确定距该路口面最近的点为修正终止点;接着,基于该修正起始点和修正终止点,确定由与该初始路口面边线关联的各条参考道路构成的边线修正路径,以及确定各条参考道路的相对方向信息,该相对方向信息指示了参考道路的方向与基准方向间的关系,该基准方向根据修正起始点和修正终止点确定;进而,针对每条参考道路,根据该参考道路的相对方向信息,从该参考道路包括的两条道路边线中选择一条作为该参考道路的修正道路边线;最终,根据边线修正路径中各条参考道路的修正道路边线和相对方向信息,确定该初始路口面边线对应的修正路口面边线。由此,先基于待修正的初始路口面边线的边线起始点和边线终止点,找到与该初始路口面边线关联的参考道路,然后,从参考道路包括的道路边线中选出与初始路口面边线所处方向相匹配的修正道路边线,进而基于所选出的修正道路边线确定修正路口面边线;如此确定出的修正路口面边线可以与初始路口面边线关联的参考道路的道路边线较好地贴合,从而能够更准确地反映所关联的参考道路交叉位置处的轮廓形状,有助于使其所属的路口面的整体形状更准确,提高该路口面的整体视觉效果。
附图说明
图1为本申请实施例提供的路口面边线的修正方法的应用场景示意图;
图2为本申请实施例提供的路口面边线的修正方法的流程示意图;
图3为本申请实施例提供的一种示例性的路口面的示意图;
图4为本申请实施例提供的一种示例性的路口面的示意图;
图5为本申请实施例提供的确定修正起始点或修正终止点的流程示意图;
图6为本申请实施例提供的一种示例性的路口面的示意图;
图7为本申请实施例提供的寻找目标节点的流程示意图;
图8为本申请实施例提供的确定边线修正路径以及相对方向信息的流程示意图;
图9为本申请实施例提供的一种示例性的路口面的示意图;
图10为本申请实施例提供的确定参考边线方向的流程示意图;
图11为本申请实施例提供的一种示例性的修正道路边线的示意图;
图12为本申请实施例提供的连接修正道路边线的流程示意图;
图13为本申请实施例提供的一种示例性的参考路口面边线的示意图;
图14为本申请实施例提供的一种示例性的曲线平滑结果示意图;
图15为本申请实施例提供的一种示例性的修正路口面边线的示意图;
图16为本申请实施例提供的路口面边线的修正装置的结构示意图;
图17为本申请实施例提供的终端设备的结构示意图;
图18为本申请实施例提供的服务器的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习、自动驾驶、智慧交通等几大方向。
本申请实施例提供的方案涉及人工智能技术,具体通过如下实施例进行说明:
本申请实施例提供的路口面边线的修正方法,可以由具备地图数据处理能力的计算机设备执行,该计算机设备可以是终端设备或服务器。其中,终端设备包括但不限于手机、电脑、智能语音交互设备、智能家电、车载终端、飞行器等。服务器可以是独立的物理服务器,也可以是由多个物理服务器构成的服务器集群或者分布式系统,还可以是云服务器。
为了便于理解本申请实施例提供的路口面边线的修正方法,下面以该路口面边线的修正方法的执行主体为服务器为例,对该路口面边线的修正方法的应用场景进行示例性介绍。
参见图1,图1为本申请实施例提供的路口面边线的修正方法的应用场景示意图。如图1所示,该应用场景中包括服务器110和数据库120,服务器110可以通过网络访问数据库120,或者数据库120也可以集成在服务器110中。其中,服务器110用于执行本申请实施例提供的路口面边线的修正方法;数据库120用于存储路口面数据,该路口面数据可以是采用相关路口面算法基于标准地图数据生成的,其可以表示地图中路口所在的空间区域。
在实际应用中,服务器110可以从数据库120获取待修正的路口面对应的路口面数据,针对该路口面上任一待修正的初始路口面边线,可以根据该路口面数据确定该初始路口面边线的边线起始点和边线终止点,进而,根据地图数据确定该边线起始点所属的第一道路、以及该边线终止点所属的第二道路。需要说明的是,本申请实施例所针对的修正对象(即初始路口面边线)通常是边线起始点和边线终止点分别属于不同道路的路口面边线,因此上述第一道路和第二道路为不同的道路。
然后,服务器110可以在第一道路的道路起始点和道路终止点中,确定距初始路口面边线所属的路口面最近的点作为修正起始点,以及在第二道路的道路起始点和道路终止点中,确定距该路口面最近的点作为修正终止点。进而,服务器110可以基于该修正起始点和修正终止点,在地图数据中寻找与初始路口面边线关联的各条参考道路,并利用各条参考道路组成边线修正路径;同时,服务器110还需要确定各条参考道路的相对方向信息,该相对方向信息用于指示地图数据中参考道路的方向与基准方向之间的关系,此处的基准方向是根据修正起始点和修正终止点确定的。
针对边线修正路径中的每条参考道路,服务器110可以根据该参考道路的相对方向信息,从该参考道路包括的两条道路边线(左道路边线和右道路边线)中选择一条道路边线,作为该参考道路的修正道路边线;此处选出的修正道路边线的方向与待修正的初始路口面边线相对于参考道路所处的方向相匹配。最终,服务器110可以根据边线修正路径中各条参考道路的修正道路边线和相对方向信息,确定初始路口面边线对应的修正路口面边线;由于该修正路口面边线是基于与初始路口面边线关联的参考道路的道路边线确定的,因此,该修正路口面边线可以与相关的道路边线较好地贴合,从而更准确地反映所关联的道路交叉位置处的轮廓形状,有助于使其所属的路口面的整体形状更准确,提高该路口面的整体视觉效果。
应理解,图1所示的应用场景仅为示例,在实际应用中,本申请实施例提供的路口面边线的修正方法也可以应用于其它场景,在此不对本申请实施例提供的路口面边线的修正方法的应用场景做任何限定。
下面通过方法实施例,对本申请提供的路口面边线的修正方法进行详细介绍。
参见图2,图2为本申请实施例提供的路口面边线的修正方法的流程示意图。为了便于描述,下述实施例仍以该路口面边线的修正方法的执行主体为服务器为例进行介绍。如图2所示,该路口面边线的修正方法包括以下步骤:
步骤201:针对待修正的初始路口面边线,确定所述初始路口面边线的边线起始点所属的第一道路、以及所述初始路口面边线的边线终止点所属的第二道路。
在实际应用中,服务器可以先采用相关的路口面生成算法,基于标准精度地图数据生成路口面。在标准精度地图数据中,通常采用没有宽度的线段表示道路(link),至少两条线段可以交汇至一个节点,该节点表示的即是这至少两条线段各自表示的道路交汇形成的路口,按照所包括的节点的数量进行划分,路口可以分为单节点路口和复合节点路口;服务器生成路口面时,可以先根据标准精度地图数据中记录的道路信息(例如道路等级、车道数量、道路宽度等),将没有宽度的线段拓宽成具有一定宽度的道路面,进而,采用路口面生成算法,基于拓宽得到的道路面生成因道路面交汇而形成的路口面,图3即为一种示例性的基于路口面生成算法生成的路口面的示意图。
然而,通过相关路口面生成算法生成的路口面普遍存在路口面边线无法与相关道路边线准确贴合的问题,如图3所示,两个箭头指向的路口面边线即无法与相关道路的道路边线准确贴合,导致路口面的整体视觉效果较差。
在本申请实施例中,服务器为了使得路口面边线与相关道路的道路边线更好地贴合,提高路口面的整体视觉效果,可以针对已生成的路口面上待修正的路口面边线确定对应的修正路口面边线。待修正的路口面边线在本申请实施例中被视为初始路口面边线,应理解,路口面边线即是已生成的路口面的边界线。
针对待修正的初始路口面边线,服务器可以将该初始路口面边线的两个端点分别确定为边线起始点和边线终止点;需要说明的是,对于通过路口面生成算法生成的路口面,其路口面边线上的各点通常具有特定的排列顺序,相应地,初始路口面边线上排列顺序在前的端点可以作为边线起始点,初始路口面边线上排列顺序在后的端点可以作为边线终止点。进而,服务器可以确定边线起始点所属的道路作为第一道路,确定边线终止点所属的道路作为第二道路;通常情况下,边线起始点和边线终止点均所属于道路边线(即对没有宽度的线段进行拓宽后得到的左右边线),相应地,边线起始点所属的道路边线对应的道路即为第一道路,边线终止点所属的道路边线对应的道路即为第二道路。
需要说明的是,本申请实施例提供的路口面边线的修正方法适用的修正对象(即初始路口面边线)通常是边线起始点和边线终止点分属于不同道路的路口面边线,即边线起始点所属的第一道路与边线终止点所属的第二道路不同。对于边线起始点和边线终止点属于同一道路的路口面边线,例如边线起始点和边线终止点分别属于同一道路的左道路边线和右道路边线的情况,通常采用直线连接边线起始点和边线终止点,即可得到该路口面边线,并且该路口面边线无需与道路边线相贴合,因此通常不采用本申请实施例提供的方法对其进行修正。
步骤202:在所述第一道路的道路起始点和道路终止点中,确定距所述初始路口面边线所属的路口面最近的点为修正起始点;在所述第二道路的道路起始点和道路终止点中,确定距所述路口面最近的点为修正终止点。
服务器确定出边线起始点所属的第一道路、以及边线终止点所属的第二道路后,可以在第一道路的道路起始点和道路终止点中,确定距初始路口面边线所属的路口面最近的点作为修正起始点,以及在第二道路的道路起始点和道路终止点中,确定距该路口面最近的点作为修正终止点。
需要说明的是,在标准精度地图数据中,每条道路(即没有宽度的线段)都记录有对应的起始拓扑点和终止拓扑点,两条前后相邻的道路会关联同一个拓扑点,从而建立这两条道路之间的连接关系,且道路的方向即是从起始拓扑点到终止拓扑点的方向。在本申请实施例中,将道路的起始拓扑点称为道路起始点,将道路的终止拓扑点称为道路终止点。图4为本申请实施例提供的一种示例性的路口面示意图,其中用箭头标示了第一道路、第一道路的道路边线、第一道路的道路起止点(包括道路起始点和道路终止点中的至少一个)、以及第二道路、第二道路的道路边线、第二道路的道路起止点、以及待修正的初始路口面边线的边线起始点和边线终止点。
在一种可能的实现方式中,服务器可以通过以下方式,在第一道路的道路起始点和道路终止点中,确定距初始路口面边线所属的路口面最近的点为修正起始点:判断第一道路的道路起始点和道路终止点中是否存在位于该路口面内的点,若是,则确定位于该路口面内的点作为修正起始点;若否,则确定第一道路的道路起始点与该路口面的质心的距离、以及第一道路的道路终止点与该路口面的质心的距离,进而,确定与该路口面的质心的距离最小的点为修正起始点。
相类似的,服务器可以通过以下方式,在第二道路的道路起始点和道路终止点中,确定距初始路口面边线所属的路口面最近的点为修正终止点:判断第二道路的道路起始点和道路终止点中是否存在位于该路口面内的点,若是,则确定位于该路口面内的点作为修正终止点;若否,则确定第二道路的道路起始点与该路口面的质心的距离、以及第二道路的道路终止点与该路口面的质心的距离,进而,确定与该路口面的质心的距离最小的点为修正终止点。
图5为本申请实施例提供的一种示例性的确定修正起始点或修正终止点的流程示意图。如图5所示,针对当前处理的道路(第一道路或第二道路),服务器可以基于标准精度地图数据获取该道路的道路起始点startNode和道路终止点endNode,并且获取初始路口面边线所属的路口面凸包polygon(能够表示该初始路口面边线所属的路口面);然后,判断道路起始点startNode是否在该路口面凸包polygon内,若是,则返回该道路起始点startNode;若否,则判断道路终止点endNode是否在该路口面凸包polygon内,若是,则返回该道路终止点endNode;若该道路终止点endNode也不在路口面凸包polygon内,则确定路口面凸包polygon的质心massPoint,并分别计算道路起始点startNode到质心massPoint的距离sDistance、和道路终止点endNode到质心massPoint的距离eDistance,如果sDistance小于eDistance,则返回道路起始点startNode,反之,则返回道路终止点endNode。
应理解,在上述流程中,最终返回的点就是所需的修正起始点或者修正终止点,若当前处理的道路为第一道路,那么最终返回的点就是所需的修正起始点,若当前处理的道路为第二道路,那么最终返回的点就是所需的修正终止点。图6为本申请实施例提供的一种示例性的路口面示意图,图6所示的路口面与上文中图4所示的路口面为同一路口面,其中用箭头标示了第一道路和第二道路上距离路口面较远的端点、以及第一道路和第二道路上距离路口面较近的端点(即修正起始点和修正终止点)。
通过上述方式确定修正起始点和修正终止点,是为了后续可以在边线起始点和边线终止点各自所属的道路上更接近路口面的拓扑点之间搜索边线修正路径,避免在错误的拓扑点之间搜索路径,造成所搜索到的边线修正路径异常。也即,提高修正起始点和修正终止点的准确度,从而相应提高后续的边线修正效果。
当然,在实际应用中,服务器也可以通过其它方式,确定修正起始点和修正终止点,本申请实施例对此不做任何限定。
步骤203:基于所述修正起始点和所述修正终止点,确定边线修正路径、以及所述边线修正路径包括的各条参考道路的相对方向信息;所述边线修正路径包括与所述初始路口面边线关联的各条参考道路,所述参考道路的相对方向信息用于指示所述参考道路的方向与基准方向间的关系,所述基准方向根据所述修正起始点和所述修正终止点确定。
服务器确定出修正起始点和修正终止点后,可以基于该修正起始点和修正终止点进行寻路,以找到与待修正的初始路口面边线相关的各条参考道路,并利用各条参考道路组成边线修正路径;同时,在寻路过程中,还可以针对每条参考道路确定相对方向信息,该相对方向信息可以指示参考道路的方向与基准方向之间的关系,例如与基准方向相同或相反,此处的基准方向可以根据修正起始点和修正终止点确定,该相对方向信息后续可以决定从参考道路包括的两条道路边线中抽取哪条道路边线确定修正路口面边线。
在一种可能的实现方式中,若通过步骤202确定的修正起始点与修正终止点为两个不同的点,即修正起始点与修正终止点不同,则说明修正起始点与修正终止点之间存在中间路径,此时,服务器可以通过以下方式,基于修正起始点和修正终止点,确定边线修正路径以及边线修正路径包括的各条参考道路的相对方向信息:
在路网数据包括的道路起止点中,寻找从修正起始点到修正终止点的最短路径上的目标节点,并确定目标节点的关联信息;该目标节点的关联信息用于指示找到该目标节点所依据的源节点。基于目标节点的关联信息,从修正终止点起向修正起始点回溯,得到边线修正路径包括的中间参考道路;并在回溯过程中,根据目标节点或其关联的源节点的类型,确定目标节点和源节点之间的中间参考道路的相对方向信息。将第一道路和第二道路添加至该边线修正路径中,并根据修正起始点的类型确定第一道路的相对方向信息,根据修正终止点的类型确定第二道路的相对方向信息。
应理解,上述路网数据是上文中提及的标准精度地图数据,道路起止点包括标准精度地图数据中针对每条道路记录的起始起始拓扑点和终止拓扑点。
作为一种示例,服务器可以通过以下方式,寻找从修正起始点到修正终止点的最短路径上的目标节点,并确定目标节点的关联信息:
按照节点排列顺序从目标节点序列中选取当前处理节点,基于当前处理节点执行寻点操作,直至所选取的当前处理节点为修正终止点为止;该目标节点序列中的第一个元素为修正起始点及其关联信息。其中,寻点操作包括:获取当前处理节点连接的候选道路;针对每条候选道路,确定该候选道路连接的另一个道路起止点为待处理节点;若目标节点序列当前不包括待处理节点的关联信息,则将该待处理节点及其关联信息记录到目标节点序列中;若该目标节点序列已包括该待处理节点的关联信息,则基于当前处理节点的关联信息和该候选道路的长度,确定是否更新目标节点序列中该待处理节点的关联信息。
具体的,服务器可以采用最短路径算法(Dijkstra),在路网数据包括的道路起止点中,寻找从修正起始点到修正终止点的最短路径上的目标节点,图7为本申请实施例提供的寻找目标节点的流程示意图。
如图7所示,服务器可以先判断修正起始点fromNode和修正终止点toNode是否为同一点,即判断fromNode是否为toNode,若是,则说明fromNode与toNode间不存在中间路径,返回目标节点列表为空。若否,则创建索引堆indexHeap作为初始的目标节点序列,创建初始的已遍历拓扑点集合determineSet,并且确定fromNode的关联信息,具体可以确定fromNode到自身的距离、以及该fromNode的源节点为空,将该fromNode及其关联信息(fromElement)写入indexHeap。然后,判断indexHeap是否为非空,若否,则提示处理过程出现异常,返回indexHeap为空。若indexHeap不是非空,则将indexHeap的队首元素currElement(最新添加至目标节点序列中的元素,包括最新添加至目标节点序列中的节点及其关联信息)取出,加入determineSet中,并将该currElement对应的节点作为当前处理节点currNode,基于该currNode执行寻点操作。
基于currNode执行寻点操作前,可以先判断currNode是否为toNode,若是,则确定已找到从fromNode到toNode的最短路径上的各目标节点,可以相应地返回indexHeap。若否,则继续基于currNode执行寻点操作。
具体执行寻点操作时,可以先获取currNode连接的各条道路relatedRoads作为候选道路,并将relatedRoads中的第一道路road1和第二道路road2过滤掉;然后,基于relatedRoads进行遍历处理,基于一条relatedRoad进行处理时,可以获取该relatedRoad连接的另一个道路起止点otherNode(即相对于currNode的另一端拓扑点)作为待处理节点,创建该otherNode的关联信息;判断determineSet中是否包括otherNode及其关联信息otherElement,若determineSet中包括otherElement,则说明此前已通过相同的方式找到过该otherNode,此时,可以基于下一条relatedRoad进行处理;若determineSet中不包括otherElement,则确定relatedRoad的道路长度roadLength,并判断indexHeap是否包括otherElement,若indexHeap不包括otherElement,则说明此前未寻到过该otherNode,此时,可以确定该otherNode的关联信息,例如,计算其关联的距离信息otherElement.Length等于currNode到fromNode的距离currElement.Length与relatedRoad的长度的和值,确定otherNode的源节点为currNode,并将该otherElement添加至indexHeap中,并记录otherNode关联的道路otherElement.commonRoad为relatedRoad,进而返回基于下一条relatedRoad进行处理;若indexHeap包括otherElement,则获取indexHeap中的该otherElement(即heapOtherEle),然后判断该heapOtherEle中的距离信息heapOtherEle.Length是否大于currNode到fromNode的距离currElement.Length与relatedRoad的长度roadLength的和值,若是,则更新indexHeap中的该heapOtherEle,即将其中的距离信息heapOtherEle.Length更新为currElement.Length与roadLength的和值,将其源节点更新为currNode,并记录otherNode关联的道路heapotherEle.commonRoad为候选道路relatedRoad;若否,则返回基于下一条relatedRoad进行处理;完成对于各条relatedRoads的遍历处理后,返回判断indexHeap是否为非空,若否,则提示处理过程出现异常,返回indexHeap为空,若是,则重新在indexHeap选取currElement,进而循环执行上述流程。
上述方式采用索引堆这种数据结构记录目标节点及其关联信息,可以高效地修改内部元素的数值,有助于提高目标节点的寻找效率。并且采用最短路径算法寻找目标节点,有助于后续基于所找到的目标节点准确地确定边线修正路径。
当然,在实际应用中,服务器也可以通过其它方式,寻找从修正起始点到修正终止点的最短路径上的目标节点,本申请实施例对此不做任何限定。
服务器找到从修正起始点到修正终止点的最短路径上的各个目标节点后,可以从修正终止点向修正起始点回溯,并在回溯过程中,得到边线修正路径上的各条中间参考道路,以及确定各条中间参考道路的相对方向信息。
作为一种示例,服务器可以通过以下方式,回溯得到边线修正路径上的各条中间参考道路,并确定各条中间参考道路的相对方向信息:确定目标节点及其源节点之间的道路作为中间参考道路,并确定该中间参考道路的道路起始点;判断该中间参考道路的道路起始点是否为该源节点,若是,则确定该中间参考道路的相对方向信息为第一方向信息,若否,则确定该中间参考道路的相对方向信息为第二方向信息;此处的第一方向信息用于指示该中间参考道路的方向与基准方向相反,此处的第二方向信息用于指示该中间参考道路的方向与基准方向相同,该基准方向为由修正终止点向修正起始点。
图8为本申请实施例提供的确定边线修正路径以及相对方向信息的流程示意图。如图8所示,服务器可以获取到通过图7所示的流程得到目标节点序列indexHeap,该indexHeap中包括若干目标节点及其各自的关联信息,这些目标节点及其关联信息按照被寻到的先后顺序排列,修正终止点及其关联信息排在indexHeap的最前面,修正起始点及其关联信息排在indexHeap的最后面,即,后被寻到的目标节点及其关联信息排在indexHeap的前面,先被寻到的目标节点及其关联信息排在indexHeap的后面。此外,服务器可以创建道路结果列表roadresultList,其用于存储在回溯过程中寻到的参考道路。
进而,服务器可以判断indexHeap是否为非空,在本实现方式保护的情况下,服务器可以在修正起始点和修正终止点之间寻到路径,相应地,indexHeap应是非空。接着,服务器可以按照indexHeap中信息的排列顺序,从indexHeap中获取排列在最前面且尚未处理的元素作为当前处理元素currElement,并获取该currElement对应的目标节点currNode。然后,判断该currNode是否为修正起始点fromNode,若该currNode为fromNode,则说明服务器已完成对于indexHeap中各元素的遍历处理,此时可以开始执行图8中左半支的流程,若该currNode并非fromNode,则说明服务器尚未完成对于indexHeap中各元素的遍历处理,此时需要执行图8中右半支的流程。
服务器执行图8中右半支的流程时,针对currNode获取其对应的源节点fromNode’、以及currNode与fromNode’之间的中间参考道路commonRoad,创建存储在roadresultList中的元素roadData,记录roadData.road=commonRoad。然后,获取该commonRoad的道路起始点startNode,并判断该startNode是否为fromNode’,若是,则确定commonRoad的相对方向信息为第一方向信息,即记录roadData.isReverse=false,若否,则确定commonRoad的相对方向信息为第二方向信息,即记录roadData.isReverse=true,进而,将roadData(其中包括roadData.road和roadData.isReverse)插入到roadresultList的头部。将当前处理元素currElement更新为fromNode’对应的fromElement’,并针对更新后的当前处理元素重新执行上述处理流程。
应理解,在实际应用中,服务器也可以根据目标节点与道路起始点之间的关系、源节点与道路终止点之间的关系、或者目标节点与道路终止点之间的关系,来确定中间参考道路的相对方向信息,本申请实施例对此不做任何限定。
服务器通过上述方式,从修正终止点开始向修正起始点回溯,确定二者中间的各条中间参考道路及其各自的相对方向信息,可以保证所确定的中间参考道路及相对方向信息的准确性,从而有利于保证后续的边线修正效果。
服务器确定出修正起始点与修正终止点之间的各条中间参考道路、以及各条中间参考道路的相对方向信息后,服务器可以进一步将第一道路和第二道路也添加到边线修正路径中,并确定第一道路和第二道路的相对方向信息。
作为一种示例,服务器可以通过以下方式,确定第一道路和第二道路的相对方向信息:确定第一道路的道路起始点,判断该第一道路的道路起始点是否为修正起始点,若否,则确定该第一道路的相对方向信息为第一方向信息,若是,则确定该第一道路的相对方向信息为第二方向信息。确定第二道路的道路起始点,判断该第二道路的道路起始点是否为修正终止点,若是,则确定该第二道路的相对方向信息为第一方向信息,若否,则确定该第二道路的相对方向信息为第二方向信息。
仍参照图8所示的流程,服务器判断确定currNode为修正起始点fromNode时,说明服务器已完成对于目标节点序列indexHeap中各个元素的遍历处理,此时可以开始执行图8中左半支的流程,将第一道路road1和第二道路road2添加至道路结果列表roadresultList中,并确定二者的相对方向信息。
服务器执行图8中左半支的流程时,可以先创建roadresultList中的首元素firstData,并记录firstData.road=road1,进而,服务器可以获取该road1的道路起始点startNode,判断该startNode是否为修正起始点fromNode,若否,则记录road1的相对方向信息为第一方向信息,即记录firstData.isReverse=false,若是,则记录road1的相对方向信息为第二方向信息,即记录firstData.isReverse=true,然后,将firstData插入到roadresultList的头部。进而,服务器可以创建roadresultList中的尾元素lastData,并记录lastData.road=road2,进而,服务器可以获取该road2的道路起始点startNode,判断该startNode是否为修正终止点toNode,若是,则记录road2的相对方向信息为第一方向信息,即记录lastData.isReverse=false,若否,则记录road2的相对方向信息为第二方向信息,即记录lastData.isReverse=true,然后,将lastData插入到roadresultList的尾部。如此,结束回溯过程,得到边界修正路径(即roadresultList中包括的各roadData.road)、以及边界修正路径中各条参考道路的相对方向信息(即roadresultList中包括的各roadData.isReverse)。
应理解,在实际应用中,服务器也可以根据修正起始点与第一道路的道路终止点之间的关系,确定修正起始点的相对方向信息,也可以根据修正终止点与第二道路的道路终止点之间的关系,确定修正终止点的相对方向信息,本申请实施例对此不做任何限定。
服务器通过上述方式,将初始路口面边线的边线起始点所属的第一道路和初始路口面边线的边线终止点所属的第二道路纳入边线修正路径中,可以保证后续确定修正路口面边线时依据的道路边线更合理,从而提高修正路口面边线的效果。
图9为本申请实施例提供的一种路口面示意图,如图9所示,边线修正路径包括参考道路901、参考道路902、参考道路903和参考道路904,其中,参考道路901和参考道路904分别为第一道路和第二道路,参考道路902和参考道路903为中间参考道路,二者构成了从修正起始点到修正终止点的最短路径。
在修正起始点与修正终止点不同的情况下,服务器将修正起始点与修正终止点之间的最短路径包括的道路、以及第一道路和第二道路均作为参考道路,组成边线修正路径,对于所关联的道路交叉情况较复杂的初始路口面边线而言,这样可以准确地找到与其相关的参考道路,进而有利于后续准确地基于参考道路的道路边线确定修正路口面边线。
在一种可能的实现方式中,若通过步骤202确定的修正起始点与修正终止点为同一个点,即修正起始点与修正终止点相同,则说明修正起始点与修正终止点之间不存在中间路径,此时,服务器可以通过以下方式,基于修正起始点和修正终止点,确定边线修正路径以及边线修正路径包括的各条参考道路的相对方向信息:
确定边线修正路径包括第一道路和第二道路;根据修正起始点的类型确定该第一道路的相对方向信息,根据修正终止点的类型确定该第二道路的相对方向信息。
正如上文图7所示的流程所介绍的,若在创建目标节点序列indexHeap前判断确定修正起始点fromNode与修正终止点toNode为同一点,则返回indexHeap为空。相应地,在图8所示的流程中,若判断确定indexHeap为空,则直接执行图8中左半支所示的流程,只将第一道路road1和第二道路road2对应的roadData记录在roadresultList中,并根据修正起始点fromNode的类型(如道路起始点或道路终止点)确定road1的相对方向信息,根据修正终止点toNode的类型(如道路起始点或道路终止点)确定road2的相对方向信息。对于图8中左半支所示的流程的执行方式已在上文介绍,详细可参见上文的相关介绍内容,此处不再赘述。
在修正起始点与修正终止点相同的情况下,服务器将第一道路和第二道路作为参考道路组成边线修正路径,对于所关联的道路交叉情况较简单的初始路口面边线而言,这样可以高效、准确地找到与其相关的参考道路,进而有利于后续准确地基于参考道路的道路边线确定修正路口面边线。
步骤204:针对所述边线修正路径中每条参考道路,根据所述参考道路的相对方向信息,从所述参考道路包括的道路边线中选择所述参考道路的修正道路边线。
对于所确定的边线修正路径中的每条参考道路,服务器可以根据该参考道路的相对方向信息,在该参考道路包括的左边线和右边线中,选择一条所处位置与初始路口面边线所处方位相匹配的道路边线,作为该参考道路的修正道路边线,该修正道路边线是后续确定修正路口面边线时需要依据的道路边线。
在一种可能的实现方式中,服务器可以通过以下方式针对参考道路选择其修正道路边线:根据边线修正路径中第一道路的相对方向信息、初始路口面边线的边线起始点到第一道路的左边线的距离、以及边线起始点到第一道路的右边线的距离,确定参考边线方向;或,根据边线修正路径中第二道路的相对方向信息、初始路口面边线的边线终止点到第二道路的左边线的距离、以及边线终止点到第二道路的右边线的距离,确定参考边线方向;进而,针对边线修正路径中的每条参考道路,基于该参考边线方向和该参考道路的相对方向信息,从其包括的道路边线中选择该参考道路的修正道路边线。
图10为本申请实施例提供的一种确定参考边线方向的流程示意图,图10所示的流程具体为根据边线起始点和第一道路的相关信息确定参考边线方向的流程。如图10所示,服务器可以获取初始路口面边线的边线起始点point1,以及从道路结果列表roadresultList中获取首元素firstData,并获取firstData中记录的信息,即firstData.road(road1)和firstData.isReverse,此外,服务器还会获取road1的左边线上的形状点leftPoints和右边线上的形状点rightPoints,应理解,道路边线上的形状点可以理解为道路边线上的点串。然后,计算point1到leftPoints的最短距离distance1,计算point1到rightPoints的最短距离distance2。接着,判断distance1是否小于distance2;若distance1小于distance2,则进一步判断firstData.isReverse是否为第一方向信息(即false),若是,则确定参考边线方向为左侧,若否,则确定参考边线方向为右侧;若distance1不小于distance2,也进一步判断firstData.isReverse是否为第一方向信息(即false),若是,则确定参考边线方向为右侧,若否,则确定参考边线方向为左侧。
应理解,在实际应用中,也可以根据边线终止点和第二道路的相关信息确定参考边线方向,具体实现方式与根据边线起始点和第一道路的相关信息确定参考边线方向的实现方式相类似,此处不再赘述。
进一步地,针对边线修正路径中的每条参考道路,服务器可以根据上述参考边线方向和该参考道路的相对方向信息,从该参考道路包括的左边线和右边线中选择一条道路边线作为修正道路边线。具体的,假设所确定的参考边线方向为左侧,针对每条参考道路,可以判断其相对方向信息是否为第一方向信息,若是,则选择该参考道路的左边线为修正道路边线,反之,选择该参考道路的右边线为修正道路边线;假设所确定的参考边线方向为右侧,针对每条参考道路,可以判断其相对方向信息是否为第一方向信息,若是,则选择该参考道路的右边线为修正道路边线,反之,选择该参考道路的左边线为修正道路边线。
服务器通过上述方式,从参考道路包括的左边线和右边线中选择该参考道路的修正道路边线,可以保证所选择的修正道路边线所处的位置与待修正的初始路口面边线所处的方位相匹配,从而保证后续基于修正道路边线确定的修正路口面边线的方位与该初始路口面边线的方位相一致,避免发生修正路口面边线形状异常的情况。
图11为本申请实施例提供的一种修正道路边线的示意图。如图11所示,其中箭头指示的各条道路边线,即是从参考道路包括的左边线和右边线中选出的修正道路边线。
当然,在实际应用中,服务器也可以通过其它方式,针对参考道路选择其修正道路边线,本申请实施例对此不做任何限定。
步骤205:根据所述边线修正路径中各条参考道路的修正道路边线和相对方向信息,确定所述初始路口面边线对应的修正路口面边线。
服务器确定出边线修正路径包括的各条参考道路各自的修正道路边线后,可以根据各条参考道路的修正道路边线和相对方向信息,确定待修正的初始路口面边线对应的修正路口面边线。该修正路口面边线即是最终所需的路口面边线,其能够较好地与相关的道路边线相贴合,从而更好地反映道路交叉位置处的形状。
在一种可能的实现方式中,服务器可以通过以下方式,生成修正路口面边线:基于边线修正路径中各条参考道路的相对方向信息,连接各条参考道路的修正道路边线,得到参考路口面边线;基于参考路口面边线进行平滑处理,并利用初始路口面边线的边线起始点和边线终止点截取该平滑处理后的参考路口面边线,得到修正路口面边线。
路网数据中各条道路的道路边线均具有对应的方向,道路边线上的形状点即按照该道路边线的方向排布。连接各条参考道路的修正道路边线本质上是将各条修正道路边线上的形状点连接起来,但是由于道路边线上的形状点具有特定的排布方向,因此,连接修正道路边线时,需要检测是否需要对该修正道路边线上的形状点的排布顺序进行调整,若需要,则对修正道路边线上的形状点的排布顺序进行颠倒处理,进而,将该修正道路边线上的形状点与其它修正道路边线上的形状点连接起来,若不需要,则可以直接将该修正道路边线上的形状点与其它修正道路边线上的形状点连接起来、
作为一种示例,边线修正路径中可以包括按目标顺序排列的各条参考道路,该目标顺序与从修正起始点指向修正终止点的方向相匹配;相应地,服务器可以通过以下方式,连接各条参考道路的修正道路边线得到参考路口面边线:按照该目标顺序,针对边线修正路径中每条参考道路,根据该参考道路的相对方向信息、以及确定该参考道路的修正道路边线时依据的参考边线方向,确定修正道路边线上的形状点的排布顺序,并按照该排布顺序将该修正道路边线上的形状点添加至结果点列表中。最终,按照结果点列表中各形状点的排布顺序,连接该所述结果点列表中各形状点,得到参考路口面边线。
基于上文中图8所示的流程介绍的边线修正路径的确定方式可知,通过从修正终止点向修正起始点回溯的过程,可以得到道路结果列表roadresultList,其中包括边线修正路径中的各条参考道路,且其中的各条参考道路按照目标顺序排列,更具体的,roadresultList中的第一条参考道路为第一道路,第二条参考道路为从修正起始点到修正终止点的最短路径上、与修正起始点相连的中间参考道路,……,倒数第二条参考道路为从修正起始点到修正终止点的最短路径上、与修正终止点相连的中间参考道路,最后一条参考道路为第二道路,即该roadresultList中各条参考道路的排列顺序与从修正起始点指向修正终止点的方向相匹配。
图12为本申请实施例提供的连接修正道路边线的流程示意图。如图12所示,服务器可以获取上述道路结果列表roadresultList、以及通过图10所示的流程确定的参考边线方向direction,服务器还可以创建结果点列表resultPointList,该resultPointList用于按照形状点的连接顺序存储各修正道路边线上的形状点。服务器针对roadresultList可以遍历处理其中的各条参考道路,具体的,服务器可以按照roadresultList中参考道路的排布顺序,从该roadresultList依次抽取各条参考道路作为当前元素roadData,将其中的形状点添加至resultPointList。针对roadData,服务器可以获取其中记录的参考道路,即road=roadData.road,还可以获取其中记录的相对方向信息,即isReverse=roadData.isReverse,然后判断direction是否为左侧;若direction为左侧,则进一步判断isReverse是否为第一方向信息false,若是,则确定该参考道路的修正道路边线为该参考道路的左边线,并将该左边线上的形状点按照其原本的排列顺序添加至resultPointList,若否,则确定该参考道路的修正道路边线为该参考道路的右边线,并将该右边线上的形状点按照逆序添加至resultPointList;若direction为右侧,则进一步判断isReverse是否为第一方向信息,若否,则确定该参考道路的修正道路边线为该参考道路的左边线,并将该左边线上的形状点按照逆序添加至resultPointList,若是,则确定该参考道路的修正道路边线为该参考道路的右边线,并将该右边线上的形状点按照其原本的排列顺序添加至resultPointList。如此,遍历完成对于roadresultList中各条参考道路的处理后,可以返回resultPointList。按照resultPointList中各形状点的排布顺序,相应地连接该resultPointList中各形状点,即可得到参考路口面边线。
图13为本申请实施例提供的一种参考路口面边线的示意图。图13中(a)示出了按照上述方式连接各条参考道路的修正道路边线得到的参考路口面边线,其中包括自交环,为了避免自交环影响最终生成的修正路口面边线的效果,可以采用相关的自交环去除算法,去除这些自交环,得到图13中(b)所示的参考路口面边线。
服务器通过上述方式,将各条参考道路的修正道路边线连接起来,可以保证连接得到的参考路口面边线与初始路口面边线相匹配,从而保证后续生成的修正路口面边线的准确性,避免出现该修正路口面边线不准确的情况。
服务器得到参考路口面边线后,可以对该参考路口面边线的折角处进行局部平滑处理,以优化该参考路口面边线的形状。
在一种可能的实现方式中,服务器可以通过以下方式对参考路口面边线进行平滑处理:按照预设间距,在参考路口面边线上进行插点,采用柴金(Chaikin)曲线算法,基于该参考路口面边线的插点结果,对该参考路口面边线进行平滑处理。
具体的,服务器可以先对参考路口面边线按照一定的预设间距(如2米)插点,以使得参考路口面边线上的形状点之间不至于过于稀疏,从而避免后续做平滑处理时对参考路口面边线的形状产生较大的改变,违背了局部平滑的目的。然后,再采用Chaikin算法对插点后的参考路口面边线进行平滑,该平滑算法可以较好地达到局部平滑的目的;当然,在实际应用中,也可以采用其它平滑算法对参考路口面边线进行平滑处理,本申请实施例对此不做任何限定。
图14为本申请实施例提供的曲线平滑结果示意图,图14中(a)所示为对参考路口面边线进行插点处理,基于插点结果生成的平滑处理结果,图14中(b)所示为未对参考路口面边线进行插点处理而生成的平滑处理结果。通过对比可以发现,图14中(a)的效果优于图14中(b)的效果,图14中(b)的平滑程度过大,参考路口面边线的形状发生了较大的改变,难以较好地与道路边线相贴合。
可见,先对参考路口面边线进行插点处理,再基于插点结果对该参考路口面边线进行平滑处理,有助于提升最终得到的平滑效果,保证平滑后的参考路口面边线仍可以与修正道路边线较好地贴合。
最终,采用初始路口面边线的边线起始点和边线终止点,对平滑处理后的参考路口面边线进行截取处理,截取得到该参考路口面边线上位于该边线起始点和边线终止点之间的曲线段,该曲线段即为最终所需的修正路口面边线。具体实现时,可以借助几何JTS库中的函数,计算该边线起始点和边线终止点在平滑后的参考路口面边线上的位置,再根据这两个位置从该平滑后的参考路口面边线上截取两个位置之间的曲线,作为修正路口面边线。图15为本申请实施例提供的修正路口面边线的示意图,其中边线起始点和边线终止点之间的曲线,即为修正路口面边线。
如此,通过上述方式,根据各条参考道路的修正道路边线确定修正路口面边线,可以保证所得到的修正路口面边线平滑美观,且与相关的道路边线准确贴合,准确地反映道路交叉位置处的形状。
本申请实施例提供的路口面边线的修正方法,先基于待修正的初始路口面边线的边线起始点和边线终止点,找到与该初始路口面边线关联的参考道路,然后,从参考道路包括的道路边线中选出与初始路口面边线所处方向相匹配的修正道路边线,进而基于所选出的修正道路边线确定修正路口面边线;如此确定出的修正路口面边线可以与初始路口面边线关联的参考道路的道路边线较好地贴合,从而能够更准确地反映所关联的参考道路交叉位置处的轮廓形状,有助于使其所属的路口面的整体形状更准确,提高该路口面的整体视觉效果。
针对上文描述的路口面边线的修正方法,本申请还提供了对应的路口面边线的修正装置,以使上述路口面边线的修正方法在实际中得以应用及实现。
参见图16,图16是与上文图2所示的路口面边线的修正方法对应的路口面边线的修正装置1600的结构示意图。如图16所示,该路口面边线的修正装置1600包括:
道路确定模块1601,用于针对待修正的初始路口面边线,确定所述初始路口面边线的边线起始点所属的第一道路、以及所述初始路口面边线的边线终止点所属的第二道路;
修正点确定模块1602,用于在所述第一道路的道路起始点和道路终止点中,确定距所述初始路口面边线所属的路口面最近的点为修正起始点;在所述第二道路的道路起始点和道路终止点中,确定距所述路口面最近的点为修正终止点;
寻路模块1603,用于基于所述修正起始点和所述修正终止点,确定边线修正路径、以及所述边线修正路径包括的各条参考道路的相对方向信息;所述边线修正路径包括与所述初始路口面边线关联的各条参考道路,所述参考道路的相对方向信息用于指示所述参考道路的方向与基准方向间的关系,所述基准方向根据所述修正起始点和所述修正终止点确定;
道路边线确定模块1604,用于针对所述边线修正路径中每条参考道路,根据所述参考道路的相对方向信息,从所述参考道路包括的道路边线中选择所述参考道路的修正道路边线;
修正模块1605,用于根据所述边线修正路径中各条参考道路的修正道路边线和相对方向信息,确定所述初始路口面边线对应的修正路口面边线。
可选的,若所述修正起始点与所述修正终止点不同,所述寻路模块1603具体用于:
在路网数据包括的道路起止点中,寻找从所述修正起始点到所述修正终止点的最短路径上的目标节点,并确定所述目标节点的关联信息;所述目标节点的关联信息用于指示找到所述目标节点依据的源节点;
基于所述目标节点的关联信息,从所述修正终止点起向所述修正起始点回溯,得到所述边线修正路径包括的中间参考道路;在回溯过程中,根据所述目标节点或其关联的源节点的类型,确定所述目标节点和所述源节点之间的所述中间参考道路的相对方向信息;
将所述第一道路和所述第二道路添加至所述边线修正路径中,根据所述修正起始点的类型确定所述第一道路的相对方向信息,根据所述修正终止点的类型确定所述第二道路的相对方向信息。
可选的,所述寻路模块1603具体用于:
按照节点排列顺序从目标节点序列中选取当前处理节点,基于所述当前处理节点执行寻点操作,直至所选取的当前处理节点为所述修正终止点为止;所述目标节点序列中的第一个元素为所述修正起始点及其关联信息;
其中,所述寻点操作包括:
获取所述当前处理节点连接的候选道路;针对每条所述候选道路,确定所述候选道路连接的另一个道路起止点为待处理节点;若所述目标节点序列不包括所述待处理节点的关联信息,则将所述待处理节点及其关联信息记录到所述目标节点序列中;若所述目标节点序列包括所述待处理节点的关联信息,则基于所述当前处理节点的关联信息和所述候选道路的长度,确定是否更新所述目标节点序列中所述待处理节点的关联信息。
可选的,所述寻路模块1603具体用于:
确定所述目标节点及其源节点之间的中间参考道路的道路起始点;
判断所述中间参考道路的道路起始点是否为所述源节点,若是,则确定所述中间参考道路的相对方向信息为第一方向信息,若否,则确定所述中间参考道路的相对方向信息为第二方向信息;所述第一方向信息用于指示所述中间参考道路的方向与基准方向相反,所述第二方向信息用于指示所述中间参考道路的方向与基准方向相同,所述基准方向为由所述修正终止点向所述修正起始点。
可选的,若所述修正起始点与所述修正终止点相同,所述寻路模块1603具体用于:
确定所述边线修正路径包括所述第一道路和所述第二道路;
根据所述修正起始点的类型确定所述第一道路的相对方向信息,根据所述修正终止点的类型确定所述第二道路的相对方向信息。
可选的,所述寻路模块1603具体用于:
确定所述第一道路的道路起始点;判断所述第一道路的道路起始点是否为所述修正起始点,若否,则确定所述第一道路的相对方向信息为第一方向信息,若是,则确定所述第一道路的相对方向信息为第二方向信息;
确定所述第二道路的道路起始点;判断所述第二道路的道路起始点是否为所述修正终止点,若是,则确定所述第二道路的相对方向信息为所述第一方向信息,若否,则确定所述第二道路的相对方向信息为所述第二方向信息。
可选的,所述道路边线确定模块1604具体用于:
根据所述边线修正路径中所述第一道路的相对方向信息、所述边线起始点到所述第一道路的左边线的距离、以及所述边线起始点到所述第一道路的右边线的距离,确定参考边线方向;或,根据所述边线修正路径中所述第二道路的相对方向信息、所述边线终止点到所述第二道路的左边线的距离、以及所述边线终止点到所述第二道路的右边线的距离,确定所述参考边线方向;
针对所述边线修正路径中的每条所述参考道路,基于所述参考边线方向和所述参考道路的相对方向信息,从其包括的道路边线中选择所述参考道路的修正道路边线。
可选的,所述修正模块1605具体用于:
基于所述边线修正路径中各条参考道路的相对方向信息,连接所述各条参考道路的修正道路边线,得到参考路口面边线;
基于所述参考路口面边线进行平滑处理,并利用所述边线起始点和所述边线终止点截取平滑处理后的参考路口面边线,得到所述修正路口面边线。
可选的,所述边线修正路径中包括按目标顺序排列的各条参考道路,所述目标顺序与所述修正起始点指向所述修正终止点的方向相匹配;所述修正模块1605具体用于:
按照所述目标顺序,针对所述边线修正路径中每条所述参考道路,根据所述参考道路的相对方向信息、以及确定所述参考道路的修正道路边线时依据的参考边线方向,确定所述修正道路边线上的形状点的排布顺序,并按照所述排布顺序将所述修正道路边线上的形状点添加至结果点列表中;
按照所述结果点列表中各形状点的排布顺序,连接所述所述结果点列表中各形状点,得到所述参考路口面边线。
可选的,所述修正模块1605具体用于:
按照预设间距,在所述参考路口面边线上进行插点;
采用柴金曲线算法,基于所述参考路口面边线的插点结果,对所述参考路口面边线进行平滑处理。
可选的,所述修正点确定模块1602具体用于:
判断所述第一道路的道路起始点和道路终止点中是否存在位于所述路口面内的点,若是,则确定位于所述路口面内的点作为所述修正起始点;若否,则确定所述第一道路的道路起始点与所述路口面的质心的距离以及所述第一道路的道路终止点与所述路口面的质心的距离,确定与所述路口面的质心的距离最小的点为所述修正起始点;
判断所述第二道路的道路起始点和道路终止点中是否存在位于所述路口面内的点,若是,则确定位于所述路口面内的点作为所述修正终止点;若否,则确定所述第二道路的道路起始点与所述路口面的质心的距离以及所述第二道路的道路终止点与所述路口面的质心的距离,确定与所述路口面的质心的距离最小的点为所述修正终止点。
本申请实施例提供的路口面边线的修正装置,先基于待修正的初始路口面边线的边线起始点和边线终止点,找到与该初始路口面边线关联的参考道路,然后,从参考道路包括的道路边线中选出与初始路口面边线所处方向相匹配的修正道路边线,进而基于所选出的修正道路边线确定修正路口面边线;如此确定出的修正路口面边线可以与初始路口面边线关联的参考道路的道路边线较好地贴合,从而能够更准确地反映所关联的参考道路交叉位置处的轮廓形状,有助于使其所属的路口面的整体形状更准确,提高该路口面的整体视觉效果。
本申请实施例还提供了一种用于修正路口面边线的计算机设备,该计算机设备具体可以是终端设备或者服务器,下面将从硬件实体化的角度对本申请实施例提供的终端设备和服务器进行介绍。
参见图17,图17是本申请实施例提供的终端设备的结构示意图。如图17所示,为了便于说明,仅示出了与本申请实施例相关的部分,具体技术细节未揭示的,请参照本申请实施例方法部分。该终端可以为包括手机、平板电脑、个人数字助理(Personal DigitalAssistant,PDA)、销售终端(Point of Sales,POS)、车载电脑等任意终端设备,以终端为计算机为例:
图17示出的是与本申请实施例提供的终端相关的计算机的部分结构的框图。参考图17,计算机包括:射频(Radio Frequency,RF)电路1710、存储器1720、输入单元1730(其中包括触控面板1731和其他输入设备1732)、显示单元1740(其中包括显示面板1741)、传感器1750、音频电路1760(其可以连接扬声器1761和传声器1762)、无线保真(wirelessfidelity,WiFi)模块1770、处理器1780、以及电源1790等部件。本领域技术人员可以理解,图17中示出的计算机结构并不构成对计算机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
存储器1720可用于存储软件程序以及模块,处理器1780通过运行存储在存储器1720的软件程序以及模块,从而执行计算机的各种功能应用以及数据处理。存储器1720可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据计算机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器1720可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
处理器1780是计算机的控制中心,利用各种接口和线路连接整个计算机的各个部分,通过运行或执行存储在存储器1720内的软件程序和/或模块,以及调用存储在存储器1720内的数据,执行计算机的各种功能和处理数据。可选的,处理器1780可包括一个或多个处理单元;优选的,处理器1780可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1780中。
在本申请实施例中,该终端所包括的处理器1780还用于执行本申请实施例提供的路口面边线的修正方法的任意一种实现方式的步骤。
参见图18,图18为本申请实施例提供的一种服务器1800的结构示意图。该服务器1800可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processing units,CPU)1822(例如,一个或一个以上处理器)和存储器1832,一个或一个以上存储应用程序1842或数据1844的存储介质1830(例如一个或一个以上海量存储设备)。其中,存储器1832和存储介质1830可以是短暂存储或持久存储。存储在存储介质1830的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1822可以设置为与存储介质1830通信,在服务器1800上执行存储介质1830中的一系列指令操作。
服务器1800还可以包括一个或一个以上电源1826,一个或一个以上有线或无线网络接口1850,一个或一个以上输入输出接口1858,和/或,一个或一个以上操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
上述实施例中由服务器所执行的步骤可以基于该图18所示的服务器结构。
其中,CPU 1822还可以用于执行本申请实施例提供的路口面边线的修正方法的任意一种实现方式的步骤。
本申请实施例还提供一种计算机可读存储介质,用于存储计算机程序,该计算机程序用于执行前述各个实施例所述的一种路口面边线的修正方法中的任意一种实施方式。
本申请实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行前述各个实施例所述的一种路口面边线的修正方法中的任意一种实施方式。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储计算机程序的介质。
应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (15)
1.一种路口面边线的修正方法,其特征在于,所述方法包括:
针对待修正的初始路口面边线,确定所述初始路口面边线的边线起始点所属的第一道路、以及所述初始路口面边线的边线终止点所属的第二道路;
在所述第一道路的道路起始点和道路终止点中,确定距所述初始路口面边线所属的路口面最近的点为修正起始点;在所述第二道路的道路起始点和道路终止点中,确定距所述路口面最近的点为修正终止点;
基于所述修正起始点和所述修正终止点,确定边线修正路径、以及所述边线修正路径包括的各条参考道路的相对方向信息;所述边线修正路径包括与所述初始路口面边线关联的各条参考道路,所述参考道路的相对方向信息用于指示所述参考道路的方向与基准方向间的关系,所述基准方向根据所述修正起始点和所述修正终止点确定;
针对所述边线修正路径中每条参考道路,根据所述参考道路的相对方向信息,从所述参考道路包括的道路边线中选择所述参考道路的修正道路边线;
根据所述边线修正路径中各条参考道路的修正道路边线和相对方向信息,确定所述初始路口面边线对应的修正路口面边线。
2.根据权利要求1所述的方法,其特征在于,若所述修正起始点与所述修正终止点不同,所述基于所述修正起始点和所述修正终止点,确定边线修正路径、以及所述边线修正路径包括的各条参考道路的相对方向信息,包括:
在路网数据包括的道路起止点中,寻找从所述修正起始点到所述修正终止点的最短路径上的目标节点,并确定所述目标节点的关联信息;所述目标节点的关联信息用于指示找到所述目标节点依据的源节点;
基于所述目标节点的关联信息,从所述修正终止点起向所述修正起始点回溯,得到所述边线修正路径包括的中间参考道路;在回溯过程中,根据所述目标节点或其关联的源节点的类型,确定所述目标节点和所述源节点之间的所述中间参考道路的相对方向信息;
将所述第一道路和所述第二道路添加至所述边线修正路径中,根据所述修正起始点的类型确定所述第一道路的相对方向信息,根据所述修正终止点的类型确定所述第二道路的相对方向信息。
3.根据权利要求2所述的方法,其特征在于,所述在路网数据包括的道路起止点中,寻找从所述修正起始点到所述修正终止点的最短路径上的目标节点,并确定所述目标节点的关联信息,包括:
按照节点排列顺序从目标节点序列中选取当前处理节点,基于所述当前处理节点执行寻点操作,直至所选取的当前处理节点为所述修正终止点为止;所述目标节点序列中的第一个元素为所述修正起始点及其关联信息;
其中,所述寻点操作包括:
获取所述当前处理节点连接的候选道路;针对每条所述候选道路,确定所述候选道路连接的另一个道路起止点为待处理节点;若所述目标节点序列不包括所述待处理节点的关联信息,则将所述待处理节点及其关联信息记录到所述目标节点序列中;若所述目标节点序列包括所述待处理节点的关联信息,则基于所述当前处理节点的关联信息和所述候选道路的长度,确定是否更新所述目标节点序列中所述待处理节点的关联信息。
4.根据权利要求2所述的方法,其特征在于,所述根据所述目标节点或其关联的源节点的类型,确定所述目标节点和所述源节点之间的所述中间参考道路的相对方向信息,包括:
确定所述目标节点及其源节点之间的中间参考道路的道路起始点;
判断所述中间参考道路的道路起始点是否为所述源节点,若是,则确定所述中间参考道路的相对方向信息为第一方向信息,若否,则确定所述中间参考道路的相对方向信息为第二方向信息;所述第一方向信息用于指示所述中间参考道路的方向与基准方向相反,所述第二方向信息用于指示所述中间参考道路的方向与基准方向相同,所述基准方向为由所述修正终止点向所述修正起始点。
5.根据权利要求1所述的方法,其特征在于,若所述修正起始点与所述修正终止点相同,所述基于所述修正起始点和所述修正终止点,确定边线修正路径、以及所述边线修正路径包括的各条参考道路的相对方向信息,包括:
确定所述边线修正路径包括所述第一道路和所述第二道路;
根据所述修正起始点的类型确定所述第一道路的相对方向信息,根据所述修正终止点的类型确定所述第二道路的相对方向信息。
6.根据权利要求2或5所述的方法,其特征在于,所述根据所述修正起始点的类型确定所述第一道路的相对方向信息,包括:
确定所述第一道路的道路起始点;判断所述第一道路的道路起始点是否为所述修正起始点,若否,则确定所述第一道路的相对方向信息为第一方向信息,若是,则确定所述第一道路的相对方向信息为第二方向信息;
所述根据所述修正终止点的类型确定所述第二道路的相对方向信息,包括:
确定所述第二道路的道路起始点;判断所述第二道路的道路起始点是否为所述修正终止点,若是,则确定所述第二道路的相对方向信息为所述第一方向信息,若否,则确定所述第二道路的相对方向信息为所述第二方向信息。
7.根据权利要求1所述的方法,其特征在于,所述针对所述边线修正路径中每条参考道路,根据所述参考道路的相对方向信息,从所述参考道路包括的道路边线中选择所述参考道路的修正道路边线,包括:
根据所述边线修正路径中所述第一道路的相对方向信息、所述边线起始点到所述第一道路的左边线的距离、以及所述边线起始点到所述第一道路的右边线的距离,确定参考边线方向;或,根据所述边线修正路径中所述第二道路的相对方向信息、所述边线终止点到所述第二道路的左边线的距离、以及所述边线终止点到所述第二道路的右边线的距离,确定所述参考边线方向;
针对所述边线修正路径中的每条所述参考道路,基于所述参考边线方向和所述参考道路的相对方向信息,从其包括的道路边线中选择所述参考道路的修正道路边线。
8.根据权利要求1或7所述的方法,其特征在于,所述根据所述边线修正路径中各条参考道路的修正道路边线和相对方向信息,确定所述初始路口面边线对应的修正路口面边线,包括:
基于所述边线修正路径中各条参考道路的相对方向信息,连接所述各条参考道路的修正道路边线,得到参考路口面边线;
基于所述参考路口面边线进行平滑处理,并利用所述边线起始点和所述边线终止点截取平滑处理后的参考路口面边线,得到所述修正路口面边线。
9.根据权利要求8所述的方法,其特征在于,所述边线修正路径中包括按目标顺序排列的各条参考道路,所述目标顺序与所述修正起始点指向所述修正终止点的方向相匹配;所述基于所述边线修正路径中各条参考道路的相对方向信息,连接所述各条参考道路的修正道路边线,得到参考路口面边线,包括:
按照所述目标顺序,针对所述边线修正路径中每条所述参考道路,根据所述参考道路的相对方向信息、以及确定所述参考道路的修正道路边线时依据的参考边线方向,确定所述修正道路边线上的形状点的排布顺序,并按照所述排布顺序将所述修正道路边线上的形状点添加至结果点列表中;
按照所述结果点列表中各形状点的排布顺序,连接所述所述结果点列表中各形状点,得到所述参考路口面边线。
10.根据权利要求8所述的方法,其特征在于,所述基于所述参考路口面边线进行平滑处理,包括:
按照预设间距,在所述参考路口面边线上进行插点;
采用柴金曲线算法,基于所述参考路口面边线的插点结果,对所述参考路口面边线进行平滑处理。
11.根据权利要求1所述的方法,其特征在于,所述在所述第一道路的道路起始点和道路终止点中,确定距所述初始路口面边线所属的路口面最近的点为修正起始点,包括:
判断所述第一道路的道路起始点和道路终止点中是否存在位于所述路口面内的点,若是,则确定位于所述路口面内的点作为所述修正起始点;若否,则确定所述第一道路的道路起始点与所述路口面的质心的距离以及所述第一道路的道路终止点与所述路口面的质心的距离,确定与所述路口面的质心的距离最小的点为所述修正起始点;
所述在所述第二道路的道路起始点和道路终止点中,确定距所述路口面最近的点为修正终止点,包括:
判断所述第二道路的道路起始点和道路终止点中是否存在位于所述路口面内的点,若是,则确定位于所述路口面内的点作为所述修正终止点;若否,则确定所述第二道路的道路起始点与所述路口面的质心的距离以及所述第二道路的道路终止点与所述路口面的质心的距离,确定与所述路口面的质心的距离最小的点为所述修正终止点。
12.一种路口面边线的修正装置,其特征在于,所述装置包括:
道路确定模块,用于针对待修正的初始路口面边线,确定所述初始路口面边线的边线起始点所属的第一道路、以及所述初始路口面边线的边线终止点所属的第二道路;
修正点确定模块,用于在所述第一道路的道路起始点和道路终止点中,确定距所述初始路口面边线所属的路口面最近的点为修正起始点;在所述第二道路的道路起始点和道路终止点中,确定距所述路口面最近的点为修正终止点;
寻路模块,用于基于所述修正起始点和所述修正终止点,确定边线修正路径、以及所述边线修正路径包括的各条参考道路的相对方向信息;所述边线修正路径包括与所述初始路口面边线关联的各条参考道路,所述参考道路的相对方向信息用于指示所述参考道路的方向与基准方向间的关系,所述基准方向根据所述修正起始点和所述修正终止点确定;
道路边线确定模块,用于针对所述边线修正路径中每条参考道路,根据所述参考道路的相对方向信息,从所述参考道路包括的道路边线中选择所述参考道路的修正道路边线;
修正模块,用于根据所述边线修正路径中各条参考道路的修正道路边线和相对方向信息,确定所述初始路口面边线对应的修正路口面边线。
13.一种计算机设备,其特征在于,所述设备包括处理器及存储器;
所述存储器用于存储计算机程序;
所述处理器用于根据所述计算机程序执行权利要求1至11中任一项所述的路口面边线的修正方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储计算机程序,所述计算机程序用于执行权利要求1至11中任一项所述的路口面边线的修正方法。
15.一种计算机程序产品,包括计算机程序或者指令,其特征在于,所述计算机程序或者所述指令被处理器执行时,实现权利要求1至11中任一项所述的路口面边线的修正方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310475921.2A CN116958308A (zh) | 2023-04-25 | 2023-04-25 | 一种路口面边线的修正方法及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310475921.2A CN116958308A (zh) | 2023-04-25 | 2023-04-25 | 一种路口面边线的修正方法及相关装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116958308A true CN116958308A (zh) | 2023-10-27 |
Family
ID=88457161
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310475921.2A Pending CN116958308A (zh) | 2023-04-25 | 2023-04-25 | 一种路口面边线的修正方法及相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116958308A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118149795A (zh) * | 2024-05-09 | 2024-06-07 | 腾讯科技(深圳)有限公司 | 一种道路处理方法以及相关设备 |
-
2023
- 2023-04-25 CN CN202310475921.2A patent/CN116958308A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118149795A (zh) * | 2024-05-09 | 2024-06-07 | 腾讯科技(深圳)有限公司 | 一种道路处理方法以及相关设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106582023B (zh) | 一种游戏寻路方法和装置 | |
EP2825850B1 (en) | Segment validation | |
CN108801273B (zh) | 一种道路参考线的生成方法及装置 | |
CN110755848B (zh) | 一种游戏中的寻路方法、终端及可读存储介质 | |
Gouda et al. | CSI_GED: An efficient approach for graph edit similarity computation | |
CN116051580A (zh) | 一种血管分离方法及系统 | |
CN116958308A (zh) | 一种路口面边线的修正方法及相关装置 | |
CN113223078B (zh) | 标志点的匹配方法、装置、计算机设备和存储介质 | |
CN109214314B (zh) | 一种车道线自动融合匹配算法 | |
CN114427866A (zh) | 路径规划方法、电子设备以及存储介质 | |
JP2015132539A (ja) | 日照量計算装置、経路提案装置および日照量計算方法 | |
CN113847927A (zh) | 路径生成的方法、装置、设备、存储介质及程序产品 | |
CN103793626A (zh) | 碱基序列比对系统及方法 | |
CN114564523B (zh) | 针对智慧虚拟场景的大数据漏洞分析方法及云端ai系统 | |
CN106202247A (zh) | 一种基于经纬度的碰撞检测方法 | |
CN104801044A (zh) | 生成轨迹线顶点序列的方法和装置 | |
CN106792510B (zh) | 一种指纹定位中的预测式指纹图搜索方法 | |
CN112785082A (zh) | 基于学习的路网最短路距离近似计算模型训练方法和装置 | |
CN112037328A (zh) | 生成地图中的道路边沿的方法、装置、设备和存储介质 | |
US11620269B2 (en) | Method, electronic device, and computer program product for data indexing | |
CN116680451B (zh) | 一种基于图相似度进行合并的方法、装置及存储介质 | |
KR102217208B1 (ko) | 경로 탐색 방법 및 장치 | |
CN117539262A (zh) | 自动驾驶路径处理方法、终端设备以及存储介质 | |
CN112798006B (zh) | 一种不同路径的差异点分析方法、装置、存储介质及终端 | |
CN111259100B (zh) | 一种路网拓扑结构的构建方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40098075 Country of ref document: HK |