CN108334523B - 道路场景地图的构建方法和装置 - Google Patents
道路场景地图的构建方法和装置 Download PDFInfo
- Publication number
- CN108334523B CN108334523B CN201710046770.3A CN201710046770A CN108334523B CN 108334523 B CN108334523 B CN 108334523B CN 201710046770 A CN201710046770 A CN 201710046770A CN 108334523 B CN108334523 B CN 108334523B
- Authority
- CN
- China
- Prior art keywords
- dimensional scene
- scene
- point cloud
- information
- operation object
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/56—Information retrieval; Database structures therefor; File system structures therefor of still image data having vectorial format
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B29/00—Maps; Plans; Charts; Diagrams, e.g. route diagram
- G09B29/003—Maps
- G09B29/005—Map projections or methods associated specifically therewith
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Educational Administration (AREA)
- Educational Technology (AREA)
- Mathematical Physics (AREA)
- Remote Sensing (AREA)
- Instructional Devices (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种道路场景地图的构建方法和装置。其中,该方法包括:接收对矢量地图数据进行编辑的编辑指令,其中,编辑指令用于指示对矢量地图数据中的操作对象执行目标操作;根据编辑指令在二维场景或三维场景中对操作对象执行目标操作,得到操作结果,其中,二维场景和三维场景中的坐标具有映射关系;根据操作结果更新操作对象在矢量地图数据中的信息,得到操作对象在矢量地图数据中更新后的信息;根据更新后的信息对操作对象在目标场景中的信息进行更新,其中,目标场景为三维场景和二维场景中未对操作对象执行目标操作的场景。本发明解决了构建的道路场景地图精度较低的技术问题。
Description
技术领域
本发明涉及地图构建领域,具体而言,涉及一种道路场景地图的构建方法和装置。
背景技术
随着自动驾驶技术的发展,高精度地图逐渐成为整个技术环节中不可或缺的一部分内容。高精度地图不仅可以提供绝对精度更高的道路场景,更会包含丰富细致的道路交通信息元素,从而为自动驾驶车辆提供准确的数据来源,使其对周围的环境进行精准判断并作出合适的行驶策略。传统的三维地图多是采用数字地图为基础数据,结合道路的影像信息和实地测量数据来进行人工构建。其建模方式相对复杂,需要耗费大量的人力和时间,并且最终得到的道路场景精度较低,人为误差较大。目前高精度地图的制作基本上是依赖车载移动测量***采集到的激光点云作为基础数据,随后使用人工编辑的方法来完成高精度地图场景的构建。不过,点云数据通常只携带有空间信息和反射率信息,因此直接以此为参照,街道的特征和关键点并不具有很好的辨识度。并且在三维编辑器中,受到透视投影的影响,空间坐标并不容易被精确的定位,构建出来的道路场景地图精度较低。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种道路场景地图的构建方法和装置,以至少解决构建的道路场景地图精度较低的技术问题。
根据本发明实施例的一个方面,提供了一种道路场景地图的构建方法,包括:接收对矢量地图数据进行编辑的编辑指令,其中,所述编辑指令用于指示对所述矢量地图数据中的操作对象执行目标操作;根据所述编辑指令在二维场景或三维场景中对所述操作对象执行所述目标操作,得到操作结果,其中,所述二维场景和所述三维场景中的坐标具有映射关系;根据所述操作结果更新所述操作对象在所述矢量地图数据中的信息,得到所述操作对象在所述矢量地图数据中更新后的信息;根据所述更新后的信息对所述操作对象在目标场景中的信息进行更新,其中,所述目标场景为所述三维场景和所述二维场景中未对所述操作对象执行所述目标操作的场景。
根据本发明实施例的另一方面,还提供了一种道路场景地图的构建装置,包括:第一接收单元,用于接收对矢量地图数据进行编辑的编辑指令,其中,所述编辑指令用于指示对所述矢量地图数据中的操作对象执行目标操作;执行单元,用于根据所述编辑指令在二维场景或三维场景中对所述操作对象执行所述目标操作,得到操作结果,其中,所述二维场景和所述三维场景中的坐标具有映射关系;第一更新单元,用于根据所述操作结果更新所述操作对象在所述矢量地图数据中的信息,得到所述操作对象在所述矢量地图数据中更新后的信息;第二更新单元,用于根据所述更新后的信息对所述操作对象在目标场景中的信息进行更新,其中,所述目标场景为所述三维场景和所述二维场景中未对所述操作对象执行所述目标操作的场景。
在本发明实施例中,采用接收对矢量地图数据进行编辑的编辑指令,其中,所述编辑指令用于指示对所述矢量地图数据中的操作对象执行目标操作;根据所述编辑指令在二维场景或三维场景中对所述操作对象执行所述目标操作,得到操作结果,其中,所述二维场景和所述三维场景具有映射关系;根据所述操作结果更新所述操作对象在所述矢量地图数据中的信息,得到所述操作对象在所述矢量地图数据中更新后的信息;根据所述更新后的信息对所述操作对象在目标场景中的信息进行更新,其中,所述目标场景为所述三维场景和所述二维场景中未对所述操作对象执行所述目标操作的场景,通过根据一个场景下目标操作的操作结果更新全局坐标,再根据更新后的全局坐标更新另一个未执行目标操作的场景中的坐标,达到了编辑操作在二维场景和三维场景联动的目的,从而实现了提升构建的道路场景地图的精度的技术效果,进而解决了构建的道路场景地图精度较低的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种可选的道路场景地图的构建方法的流程图;
图2是本据本发明实施例的一种可选的道路场景地图的构建方法的流程图;
图3是根据本发明实施例的一种可选的点云数据的获取方法的流程图;
图4是根据本发明实施例的一种可选的道路场景地图的构建装置的示意图;
图5是根据本发明实施例的终端的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例1
根据本发明实施例,提供了一种可以通过本申请装置实施例执行的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机***中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1是根据本发明实施例的一种可选的道路场景地图的构建方法的流程图,以下结合图1对本发明实施例所提供的道路场景地图的构建方法做具体介绍,如图1所示,该道路场景地图的构建方法主要包括如下步骤S102至步骤S108:
步骤S102,接收对矢量地图数据进行编辑的编辑指令,其中,编辑指令用于指示对矢量地图数据中的操作对象执行目标操作。
在构建三维高精度道路场景地图时,通过对三维道路场景地图矢量地图数据中的操作对象进行编辑,使高精度三维道路场景地图更加完善,精度更高。三维道路场景地图矢量地图数据中的操作对象可以为道路场景中的任意一个对象,如:车道线、交通灯、马路牙等等,编辑指令可以是但不限于对该矢量地图数据中的操作对象的数据进行的修改,如:车道线的长度,交通灯的位置,马路牙的位置,车道的坡度等。在对矢量地图数据进行编辑时,先接收用于指示对操作对象执行目标操作的编辑指令。
步骤S104,根据编辑指令在二维场景或三维场景中对操作对象执行目标操作,得到操作结果,其中,二维场景和三维场景中的坐标具有映射关系。
高精度道路场景分别投影在二维坐标系下和三维坐标系下,得到三维场景和二维场景,其中,三维高精度道路场景在二维坐标系下和在三维坐标系下的投影场景的坐标是对应的。由于二维场景便于进行经纬度定位但却无法处理高度这一维度的数据,而三维场景便于精确定位高度却不便于处理经纬度信息,在对矢量地图数据进行编辑时,可以根据编辑时对于维度的需求,选择在二维场景或者在三维场景下对道路数据进行编辑。在二维场景下进行编辑时,根据编辑指令对二维坐标系场景下的操作对象执行目标操作,执行目标操作得到的操作结果会在二维坐标系场景下进行显示。同样的,在三维场景下进行编辑时,根据编辑指令对三维坐标系场景下的操作对象执行目标操作,执行目标操作得到的操作结果会在三维坐标系场景下进行显示。
步骤S106,根据操作结果更新操作对象在矢量地图数据中的信息,得到操作对象在矢量地图数据中更新后的信息。
三维场景和二维场景是高精度道路场景分别在三维坐标系和二维坐标系投影得到的,根据任意一个投影场景中对操作对象执行目标操作的操作结果,可以相应地对操作对象在高精度道路场景的矢量地图数据中的信息进行更新。
步骤S108,根据更新后的信息对操作对象在目标场景中的信息进行更新,其中,目标场景为三维场景和二维场景中未对操作对象执行目标操作的场景。
为了保证在不同场景下的操作结果的一致性,在更新操作对象在矢量地图数据中的信息之后,根据更新后的信息更新该操作对象在未执行目标操作的场景中的信息,从而使得在一个场景中执行目标操作之后,在另一个场景中同样能够得到相应的显示结果。
在本发明实施例中,采用接收对矢量地图数据进行编辑的编辑指令,其中,编辑指令用于指示对矢量地图数据中的操作对象执行目标操作;根据编辑指令在二维场景或三维场景中对操作对象执行目标操作,得到操作结果,其中,二维场景和三维场景具有映射关系;根据操作结果更新操作对象在矢量地图数据中的信息,得到操作对象在矢量地图数据中更新后的信息;根据更新后的信息对操作对象在目标场景中的信息进行更新,其中,目标场景为三维场景和二维场景中未对操作对象执行目标操作的场景,通过根据一个场景下目标操作的操作结果更新全局坐标,再根据更新后的全局坐标更新另一个未执行目标操作的场景中的坐标,达到了编辑操作在二维场景和三维场景联动的目的,从而实现了提升构建的道路场景地图的精度的技术效果,进而解决了构建的道路场景地图精度较低的技术问题。
可选地,根据更新后的信息对操作对象在目标场景中的信息进行更新包括:检测编辑指令指示在二维场景中执行目标操作还是在三维场景中执行目标操作;若编辑指令指示在二维场景中执行目标操作,则根据更新后的信息更新操作对象在三维场景中的信息;若编辑指令指示在三维场景中执行目标操作,则根据更新后的信息更新操作对象在二维场景中的信息。
在二维场景或者三维场景中执行目标操作并对另一个场景进行同步更新时,根据编辑指令检测出目标操作是在二维场景下执行的还是在三维场景下执行的,如果目标操作是在二维场景下执行的,则对操作对象在三维场景下的信息进行更新,如果目标操作是在三维场景下执行的,则对操作对象在二维场景下的信息进行更新,实现二维和三维场景的联动效果。
可选地,根据操作结果更新操作对象在矢量地图数据中的信息,得到操作对象在矢量地图数据中更新后的信息包括:若操作结果为在二维场景中执行目标操作得到,则获取操作对象在二维场景下的经纬度偏移量;根据经纬度偏移量更新操作对象在矢量地图数据中的全局坐标。
作为本发明实施例的一个优选的实施方式,由于在二维场景下对操作对象执行目标操作时,操作结果体现在经纬度的变化上,因此,如果目标操作是在二维场景中执行的,在根据目标操作的操作结果更新操作对象在矢量地图数据中的信息时,根据操作结果获取操作对象在二维坐标系二维场景下的经纬度偏移量,根据经纬度偏移量更新操作对象在道路场景地图中的全局坐标。
可选地,根据操作结果更新操作对象在矢量地图数据中的信息,得到操作对象在矢量地图数据中更新后的信息包括:若操作结果为在三维场景中执行目标操作得到,则获取操作对象在三维场景下的坐标偏移量;根据坐标偏移量更新操作对象在矢量地图数据中的全局坐标。
作为本发明实施例的一个优选的实施方式,如果目标操作是在三维场景中执行的,在根据目标操作的操作结果更新操作对象在矢量地图数据中的信息时,根据操作结果获取操作对象在三维坐标系下的坐标偏移量,根据坐标偏移量更新操作对象在矢量地图数据中的全局坐标。
下面结合图2对上述实施例进行说明,图2是根据本发明实施例的一种可选的道路场景地图的构建方法的流程图,如图2所示,该方法包括如下步骤:
步骤S201,编辑操作。接收对矢量地图数据进行编辑的编辑指令,根据编辑指令对矢量地图数据中的操作对象执行编辑指令所指示的编辑操作。矢量地图数据中的操作对象可以道路场景中的任意一个对象,如:车道线、交通灯、马路牙等等,编辑指令可以是但不限于对该矢量地图数据中的操作对象的数据进行修改,如:车道线的长度,交通灯的位置,马路牙的位置,车道的坡度等。
步骤S202,获取操作偏移量。在执行编辑操作之后,获取根据编辑操作的执行结果,也就是对操作对象执行编辑操作的操作偏移量。
步骤S203,判断编辑操作是否为三维编辑。高精度道路场景分别投影在二维坐标系下和三维坐标系下,得到三维场景和二维场景,其中,高精度道路场景在二维坐标系下和在三维坐标系下的投影场景是对应的。由于二维场景便于进行经纬度定位但却无法处理高度这一维度的数据,而三维场景便于精确定位高度却不便于处理经纬度信息,在对矢量地图数据进行编辑时,可以根据编辑时对于维度的需求,选择在二维坐标系或者在三维坐标系下对矢量地图数据进行编辑。在执行编辑操作之后,判断该编辑操作是在三维场景下执行的还是在二维场景下执行的。
步骤S204,如果判断出编辑操作为三维编辑,则计算局部坐标系下的坐标偏移量。如果编辑操作是在三维场景下执行的,则操作结果体现在操作对象在局部坐标系下的坐标偏移量上。根据获取的编辑操作的操作结果,计算出三维场景局部坐标系下的坐标偏移量。
步骤S205,更新操作对象的全局坐标。三维场景为道路场景在三维坐标系下的投影,通过编辑操作使操作对象在三维场景下的坐标发生变化之后,根据操作对象在三维场景下局部坐标系的坐标偏移量,对该操作对象的全局坐标进行更新。
步骤S206,更新操作对象的经纬度。为了保证在不同场景下的操作结果的一致性,在根据操作对象在三维场景下局部坐标系的坐标偏移量,对该操作对作的全局坐标进行更新之后,根据更新后的全局坐标对该操作对象在二维场景下的经纬度进行更新。
步骤S207,更新二维场景。对操作对象在二维场景下的经纬度进行更新之后,根据更新后的经纬度更新二维场景,从而使得操作对象在三维场景下的坐标发生变化时,操作对象在二维场景中的经纬度也会发生对应的变化,并且编辑操作的操作结果会同步显示在三维场景和二维场景中。
步骤S208,如果判断出编辑操作为二维编辑,则计算经纬度的偏移量。如果编辑操作是在二维场景下执行的,则操作结果体现在操作对象在二维场景下的经纬度偏移量上。根据获取的编辑操作的操作结果,计算出经纬度的偏移量。
步骤S209,更新操作对象的全局坐标。二维场景为道路场景在二维坐标系下的投影,通过编辑操作使操作对象在二维场景下的经纬度发生变化之后,根据操作对象在二维场景下的经纬度偏移量,对该操作对象的全局坐标进行更新。
步骤S210,更新操作对象的局部坐标。为了保证在不同场景下的操作结果的一致性,在根据操作对象在二维场景下的经纬度偏移量,对该操作对作的全局坐标进行更新之后,根据更新后的全局坐标对该操作对象在三维场景下的坐标进行更新。
步骤S211,更新三维场景。对操作对象在三维场景下的坐标进行更新之后,根据更新后的坐标更新三维场景,从而使得操作对象在二维场景下的经纬度发生变化时,操作对象在三维场景下坐标也会发生对应的变化,并且编辑操作的操作结果会同步显示在三维场景和二维场景中。
步骤S212,结束。通过上述步骤完成一次对操作对象的编辑操作,并实现了编辑操作在二维场景下和三维场景下的同步响应,进而实现了二维场景和三维场景的联动效果。
可选地,在接收对矢量地图数据进行编辑的编辑指令之前,方法还包括:绘制三维场景和二维场景;接收针对第一虚拟相机变换操作,其中,第一虚拟相机用于绘制三维场景,变换操作包括平移、缩放和旋转;根据变换操作更新三维场景和二维场景,其中,二维场景由第二虚拟相机绘制,根据平移更新第一虚拟相机和第二虚拟相机的焦点和位置信息,根据缩放更新第一虚拟相机和第二虚拟相机的位置信息,根据旋转更新第一虚拟相机的朝向信息。
二维场景和三维场景分别是道路场景地图在二维坐标系和三维坐标系下的投影,并且二维场景和三维场景的坐标具有映射对应关系,当一个场景发生变换时,相应的另外一个场景也要发生变换,但由于二维场景相较于三维场景缺少一个维度,因此,二维场景的变换难以正确地触发三维场景的变换,因此,仅由三维场景的变换来触发二维场景的变换。三维场景由第一虚拟相机所捕获,对应于三维场景的位置信息、焦点信息和正方向信息,第一虚拟相机可能发生包括平移、缩放和旋转三种变换。二维场景由第二虚拟相机所捕获,仅包括位置和焦点的变换。在三维场景发生变换时,获取第一虚拟相机的平移、缩放和旋转的变换,根据第一虚拟相机的平移来更新第一虚拟相机和第二虚拟相机的位置和焦点信息,根据第一虚拟相机的缩放来更新第一虚拟相机和第二虚拟相机的位置信息,根据第一虚拟相机的旋转来更新第一虚拟相机的正方向信息。通过对第一虚拟相机和第二虚拟相机的更新,使二维场景和三维场中的保持映射对应关系。
可选地,在接收对矢量地图数据进行编辑的编辑指令之前,方法还包括:接收请求信息,其中,请求信息用于请求获取目标道路场景的矢量地图数据;根据请求信息获取与目标道路场景关联的点云数据块;根据点云数据块获取与目标道路场景的矢量地图数据。
点云数据是利用车载移动测量***扫描得到的沿街道路及两侧建筑物的表面点的集合,其中包括有道路场景的点云信息,通过算法可以从点云数据中自动提取出道路场景地图的矢量地图数据,通过对矢量地图数据中的道路特征和关键点(矢量数据)进行编辑即可得到高精度道路场景地图。在对矢量地图数据进行编辑之前,先接收请求信息,该请求信息用于请求获取目标道路的场景的矢量地图数据,其中包括有三维道路场景地图的全局坐标信息,用于绘制三维场景的第一虚拟相机的信息,以及用于绘制二维场景的第二虚拟相机的信息等。根据请求信息获取与需要进行编辑的目标道路场景的点云数据块,根据点云数据块获取与目标道路场景的矢量地图数据。
可选地,根据请求信息获取与目标道路场景关联的点云数据块包括:根据请求信息获取点云八叉树的节点数据,其中点云八叉树用于描述点云数据块的空间结构信息;根据节点数据生成点云数据块的请求列表;根据请求列表获取点云数据块。
在本发明实施例中,点云数据是通过扫描得到的道路场景的表面点的集合,包含有三维空间信息,其空间结构信息通过八叉树进行描述,点云数据按照金字塔的结构对数据进行组织,每一层数据都通过对下一层数据进行抽稀获得(最顶层数据最稀)。在获取目标道路场景对应的点云数据块时,根据获取矢量地图数据的请求信息获取点云八叉树的节点数据,根据该节点数据生成一个请求列表,在请求列表中包含上述节点数据,根据请求列表获取用于提取矢量地图数据的点云数据块。
作为本发明实施例的一个优选的实施方式,在根据请求列表获取点云数据块之前,方法还包括:判断请求列表是否为空,如果判断出请求列表为空(说明当前区域没有地图数据),则重新接收请求信息,根据请求信息获取点云八叉树的节点树据并重新生成请求列表。
可选地,根据请求列表获取点云数据块包括:在缓存队列中查找请求列表中的节点数据所对应的点云数据块;如果未查找到节点数据所对应的点云数据快,则在缓存队列中查找节点数据的父节点所对应的点云数据块;根据父节点所对应的点云数据块,从服务器中获取节点数据所对应的点云数据块。
已获取过的点云数据存储在一个多级缓存队列中,同一级缓存队列存储同一层次的点云数据块,根据请求列表获取点云数据块时,在缓存中查找并获取请求列表中的节点数据所对应的点云数据块。由于每一层点云数据块的索引信息存储在其父节点中,如果没有在存缓队列中查找到节点数据对应的点云数据,则在缓存队列中查找该节点数据的父节点所对应的点云数据块,根据父节点对应的点云数所块从服务器获取当前的矢量地图数据关联的点云数据块。
可选地,在缓存队列中查找节点数据的父节点所对应的点云数据块之后,方法还包括:如果未查找到节点数据的父节点所对应的点云数据块,则将父节点***到请求列表中的最前端;根据***父节点之后的请求列表获取点云数据。
将父节点***请求列表的最前端之后,根据***父节点之后的请求列表,在缓存队列中重新查找节点数据对应的点云数据块,直到最终获取到用于生成当前的矢量地图数据的点云数据块。
下面结合附图对获取点云数据的方法进行说明,图3是根据本发明实施例的一种可选点云数据的获取方法的流程图,如图3所示,该方法包括如下步骤:
步骤S301,***启动。
步骤S302,获取点云分块信息。点云数据是利用车载移动测量***扫描得到的沿街道路及两侧建筑物的表面点的集合,其中包括有道路场景的点云信息,点云数据按照金字塔的结构对数据进行组织,每一层数据都通过对下一层数据进行抽稀获得。
步骤S303,生成点云八叉树。点云数据包含有三维空间信息,其空间结构信息可以通过八叉树进行描述,根据获取的点云分块信息,生成点云八叉树,通过点云八叉树的节点即可对点云数据块的空间结构进行描述。
步骤S304,获取相机参数。在对矢量地图数据进行编辑之前,先获取请求信息,其中包括有道路场景地图的全局坐标信息,用于绘制三维场景的第一虚拟相机的信息,以及用于绘制二维场景的第二虚拟相机的信息等,该请求信息用于请求获取目标道路的场景的矢量地图数据。
步骤S305,生成点云数据块请求列表。根据获取到的请求信息中虚拟相机的参数,获取点云数据块八叉树的节点数据,根据该节点数据生成点云数据块请求列表,在请求列表中包含上述节点数据。
步骤S306,判断列表是否为空,如果列表为空则跳转至步骤S304。生成请求列表之后,判断该请求列表是否为空,如果列表为空,则对应于虚拟相机的点云数据块八叉树节点信息不存存,需要重新获取相机参数。
步骤S307,如果请求列表不为空,判断缓存队列中是否缓存有点云数据块。已获取过的点云数据存储在一个多级缓存队列中,同一级缓存队列存储同一层次的点云数据块在判断出点云数据请求列表不为空之后,根据点云数据请求列表中的节点数据,判断在缓存队列中是否缓存有该节点数据所对应的点云数据。
步骤S308,如果判断出缓存队列中缓存有点云数据块,则将点云数据块从缓存队列中取出,从缓存队列中获取点云数据块可以提高点云数据的获取速度。
步骤S309,如果判断出缓存队列中未缓存有点云数据块,则判断该点云数据块的父节点的点云数据块是否在缓存队列中。点云数据块的父节点为当前点云数据块的上一层点云数据块的节点数据。
步骤S310,如果判断出该点云数据块的父节点的点云数据块在缓存队列中,则根据父节点的点云数据块,请求当前点数据,并调整缓存队列。由于每一层点云数据块的索引信息存储在其父节点中,因此根据父节点对应的点云数据块可以从服务器中请求获取到当前点云数据块。
步骤S311,如果判断出该点云数据块的父节点的点云数据块未在缓存队列中,则将父节点数据***请求列表最前端,并跳转至步骤S305。将父节点***请求列表的最前端之后,根据***父节点之后的新的请求列表,重新执行获取点云数据块的步骤,直到获取到当前的点云数据块。
步骤S312,绘制点云。根据获取到的点云数据块,绘制点云地图。
步骤S313,判断是否停止编辑,如果继续编辑,则跳转至步骤S304。在获取当前的点云数据块之后,判断是否停止编辑,如果继续编辑,跳转至步骤S304,根据编辑时的请求数据中的相机参数,重新获取点云数据块。
步骤S314,退出。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例的方法。
实施例2
根据本发明实施例,还提供了一种用于实施上述道路场景地图的构建方法的道路场景地图的构建装置,该道路场景地图的构建装置主要用于执行本发明实施例上述内容所提供的道路场景地图的构建方法,以下对本发明实施例所提供的道路场景地图的构建装置做具体介绍:
图4是根据本发明实施例的一种可选的道路场景地图的构建装置的示意图,如图4所示,该道路场景地图的构建装置主要包括:
第一接收单元410,用于接收对矢量地图数据进行编辑的编辑指令,其中,编辑指令用于指示对矢量地图数据中的操作对象执行目标操作。
在构建三维高精度道路场景地图时,通过对三维道路场景地图矢量地图数据中的操作对象进行编辑,使高精度三维道路场景地图更加完善,精度更高。三维道路场景地图矢量地图数据中的操作对象可以为道路场景中的任意一个对象,如:车道线、交通灯、马路牙等等,编辑指令可以是但不限于对该矢量地图数据中的操作对象的数据进行的修改,如:车道线的长度,交通灯的位置,马路牙的位置,车道的坡度等。在对矢量地图数据进行编辑时,第一接收单元410先接收用于指示对操作对象执行目标操作的编辑指令。
执行单元420,用于根据编辑指令在二维场景或三维场景中对操作对象执行目标操作,得到操作结果,其中,二维场景和三维场景中的坐标具有映射关系。
高精度道路场景分别投影在二维坐标系下和三维坐标系下,得到三维场景和二维场景,其中,三维高精度道路场景在二维坐标系下和在三维坐标系下的投影场景的坐标是对应的。由于二维场景便于进行经纬度定位但却无法处理高度这一维度的数据,而三维场景便于精确定位高度却不便于处理经纬度信息,在对矢量地图数据进行编辑时,可以根据编辑时对于维度的需求,选择在二维场景或者在三维场景下对道路数据进行编辑。在二维场景下进行编辑时,执行单元420根据编辑指令对二维坐标系场景下的操作对象执行目标操作,执行目标操作得到的操作结果会在二维坐标系场景下进行显示。同样的,在三维场景下进行编辑时,执行单元420根据编辑指令对三维坐标系场景下的操作对象执行目标操作,执行目标操作得到的操作结果会在三维坐标系场景下进行显示。
第一更新单元430,用于根据操作结果更新操作对象在矢量地图数据中的信息,得到操作对象在矢量地图数据中更新后的信息。
三维场景和二维场景是高精度道路场景分别在三维坐标系和二维坐标系投影得到的,第一更新单元430根据任意一个投影场景中对操作对象执行目标操作的操作结果,可以相应地对操作对象在高精度道路场景的矢量地图数据中的信息进行更新。
第二更新单元440,用于根据更新后的信息对操作对象在目标场景中的信息进行更新,其中,目标场景为三维场景和二维场景中未对操作对象执行目标操作的场景。
为了保证在不同场景下的操作结果的一致性,在更新操作对象在矢量地图数据中的信息之后,第二更新单元440根据更新后的信息更新该操作对象在未执行目标操作的场景中的信息,从而使得在一个场景中执行目标操作之后,在另一个场景中同样能够得到相应的显示结果。
在本发明实施例中,采用接收对矢量地图数据进行编辑的编辑指令,其中,编辑指令用于指示对矢量地图数据中的操作对象执行目标操作;根据编辑指令在二维场景或三维场景中对操作对象执行目标操作,得到操作结果,其中,二维场景和三维场景具有映射关系;根据操作结果更新操作对象在矢量地图数据中的信息,得到操作对象在矢量地图数据中更新后的信息;根据更新后的信息对操作对象在目标场景中的信息进行更新,其中,目标场景为三维场景和二维场景中未对操作对象执行目标操作的场景,通过根据一个场景下目标操作的操作结果更新全局坐标,再根据更新后的全局坐标更新另一个未执行目标操作的场景中的坐标,达到了编辑操作在二维场景和三维场景联动的目的,从而实现了提升构建的道路场景地图的精度的技术效果,进而解决了构建的道路场景地图精度较低的技术问题。
可选地,第二更新单元包括:检测模块,用于检测编辑指令指示在二维场景中执行目标操作还是在三维场景中执行目标操作;第一更新模块,用于在编辑指令指示在二维场景中执行目标操作时,根据更新后的信息更新操作对象在三维场景中的信息;第二更新模块,用于在编辑指令指示在三维场景中执行目标操作时,根据更新后的信息更新操作对象在二维场景中的信息。
在二维场景或者三维场景中执行目标操作并对另一个场景进行同步更新时,检测模块根据编辑指令检测出目标操作是在二维场景下执行的还是在三维场景下执行的,如果目标操作是在二维场景下执行的,则第一更新模块对操作对象在三维场景下的信息进行更新,如果目标操作是在三维场景下执行的,则第二更新模块对操作对象在二维场景下的信息进行更新,实现二维和三维场景的联动效果。
可选地,第一更新单元包括:第一获取模块,用于在操作结果为在二维场景中执行目标操作得到时,获取操作对象在二维场景下的经纬度偏移量;第三更新模块,用于根据经纬度偏移量更新操作对象在矢量地图数据中的全局坐标。
作为本发明实施例的一个优选的实施方式,由于在二维场景下对操作对象执行目标操作时,操作结果体现在经纬度的变化上,因此,如果目标操作是在二维场景中执行的,在根据目标操作的操作结果更新操作对象在矢量地图数据中的信息时,第一获取模块根据操作结果获取操作对象在二维坐标系二维场景下的经纬度偏移量,第三更新模块根据经纬度偏移量更新操作对象在道路场景地图中的全局坐标。
可选地,第一更新单元包括:第二获取模块,用于在操作结果为在三维场景中执行目标操作得到时,获取操作对象在三维场景下的坐标偏移量;第四更新模块,用于根据坐标偏移量更新操作对象在矢量地图数据中的全局坐标。
作为本发明实施例的一个优选的实施方式,如果目标操作是在三维场景中执行的,在根据目标操作的操作结果更新操作对象在矢量地图数据中的信息时,第二获取模块根据操作结果获取操作对象在三维坐标系下的坐标偏移量,第四更新模块根据坐标偏移量更新操作对象在矢量地图数据中的全局坐标。
可选地,装置还包括:第一绘制单元,用于在接收对矢量地图数据进行编辑的编辑指令之前,绘制三维场景和二维场景;第二接收单元,用于接收针对第一虚拟相机变换操作,其中,第一虚拟相机用于绘制三维场景,变换操作包括平移、缩放和旋转;第三更新单元,用于根据变换操作更新三维场景和二维场景,其中,二维场景由第二虚拟相机绘制,根据平移更新第一虚拟相机和第二虚拟相机的焦点和位置信息,根据缩放更新第一虚拟相机和第二虚拟相机的位置信息,根据旋转更新第一虚拟相机的朝向信息。
二维场景和三维场景分别是道路场景地图在二维坐标系和三维坐标系下的投影,并且二维场景和三维场景的坐标具有映射对应关系,当一个场景发生变换时,相应的另外一个场景也要发生变换,但由于二维场景相较于三维场景缺少一个维度,因此,二维场景的变换难以正确地触发三维场景的变换,因此,仅由三维场景的变换来触发二维场景的变换。三维场景由第一虚拟相机所捕获,对应于三维场景的位置信息、焦点信息和正方向信息,第一虚拟相机可能发生包括平移、缩放和旋转三种变换。二维场景由第二虚拟相机所捕获,仅包括位置和焦点的变换。具体地,由第一绘制单元绘制出三维场景和二维场景,在三维场景发生变换时,获取第一虚拟相机的平移、缩放和旋转的变换,根据第一虚拟相机的平移来更新第一虚拟相机和第二虚拟相机的位置和焦点信息,根据第一虚拟相机的缩放来更新第一虚拟相机和第二虚拟相机的位置信息,根据第一虚拟相机的旋转来更新第一虚拟相机的正方向信息。通过对第一虚拟相机和第二虚拟相机的更新,使二维场景和三维场中的保持映射对应关系。
可选地,装置还包括:第三接收单元,用于在接收对矢量地图数据进行编辑的编辑指令之前,接收请求信息,其中,请求信息用于请求获取目标道路场景的矢量地图数据;第一获取单元,用于根据请求信息获取与目标道路场景关联的点云数据块;第二获取单元,用于根据点云数据块获取与目标道路场景的矢量地图数据。
点云数据是利用车载移动测量***扫描得到的沿街道路及两侧建筑物的表面点的集合,其中包括有道路场景的点云信息,通过算法可以从点云数据中自动提取出道路场景地图的矢量地图数据,通过对矢量地图数据中的道路特征和关键点(矢量数据)进行编辑即可得到高精度道路场景地图。在对矢量地图数据进行编辑之前,第三接收单元先接收请求信息,该请求信息用于请求获取目标道路的场景的矢量地图数据,其中包括有三维道路场景地图的全局坐标信息,用于绘制三维场景的第一虚拟相机的信息,以及用于绘制二维场景的第二虚拟相机的信息等。第一获取单元根据请求信息获取与需要进行编辑的目标道路场景的点云数据块,第二获取单元根据点云数据块获取与目标道路场景的矢量地图数据。
可选地,第一获取单元包括:第三获取模块,用于根据请求信息获取点云八叉树的节点数据,其中点云八叉树用于描述点云数据块的空间结构信息;生成模块,用于根据节点数据生成点云数据块的请求列表;第四获取模块,用于根据请求列表获取点云数据块。
在本发明实施例中,点云数据是通过扫描得到的道路场景的表面点的集合,包含有三维空间信息,其空间结构信息通过八叉树进行描述,点云数据按照金字塔的结构对数据进行组织,每一层数据都通过对下一层数据进行抽稀获得(最顶层数据最稀)。在获取目标道路场景对应的点云数据块时,第三获取模块根据获取矢量地图数据的请求信息获取点云八叉树的节点数据,生成模块根据该节点数据生成一个请求列表,在请求列表中包含上述节点数据,第四获取模块根据请求列表获取用于提取矢量地图数据的点云数据块。
作为本发明实施例的一个优选的实施方式,在根据请求列表获取点云数据块之前,判断模块判断请求列表是否为空,如果判断出请求列表为空(说明当前区域没有地图数据),则接收模块重新接收请求信息,根据请求信息获取点云八叉树的节点树据并重新生成请求列表。
可选地,第四获取模块包括:第一查找子模块,用于在缓存队列中查找请求列表中的节点数据所对应的点云数据块;第二查找子模块,用于在未查找到节点数据所对应的点云数据快时,在缓存队列中查找节点数据的父节点所对应的点云数据块;第一获取子模块,用于根据父节点所对应的点云数据块,从服务器中获取节点数据所对应的点云数据块。
已获取过的点云数据存储在一个多级缓存队列中,同一级缓存队列存储同一层次的点云数据块,根据请求列表获取点云数据块时,第一查找子模块在缓存中查找并获取请求列表中的节点数据所对应的点云数据块。由于每一层点云数据块的索引信息存储在其父节点中,如果没有在存缓队列中查找到节点数据对应的点云数据,则第二查找子模块在缓存队列中查找该节点数据的父节点所对应的点云数据块,第一获取子模块根据父节点对应的点云数所块从服务器获取当前的矢量地图数据关联的点云数据块。
可选地,第四获取模块还包括:***子模块,用于在缓存队列中查找节点数据的父节点所对应的点云数据块之后,如果未查找到节点数据的父节点所对应的点云数据块,则将父节点***到请求列表中的最前端;第二获取子模块,用于根据***父节点之后的请求列表获取点云数据。
***子模块将父节点***请求列表的最前端之后,第二获取子模块根据***父节点之后的请求列表,在缓存队列中重新查找节点数据对应的点云数据块,直到最终获取到用于生成当前的矢量地图数据的点云数据块。
实施例3
根据本发明实施例,还提供了一种用于实施上述道路场景地图的构建方法的终端,如图5所示,该终端主要包括处理器501、显示器502、数据接口503、存储器504和网络接口505,其中:
数据接口503主要用于接收用于获取矢量地图数据的请求信息以及用于指示对矢量地图进行目标操作的编辑指令。
存储器504主要用于存储点云数据块和矢量地图数据。
网络接口505主要用于与服务器进行网络通信,从服务器获取点云数据块。
显示器502主要用于显示二维场景和三维场景以及矢量地图数据。
处理器501主要用于执行如下操作:
接收对矢量地图数据进行编辑的编辑指令,其中,编辑指令用于指示对矢量地图数据中的操作对象执行目标操作;根据编辑指令在二维场景或三维场景中对操作对象执行目标操作,得到操作结果,其中,二维场景和三维场景中的坐标具有映射关系;根据操作结果更新操作对象在矢量地图数据中的信息,得到操作对象在矢量地图数据中更新后的信息;根据更新后的信息对操作对象在目标场景中的信息进行更新,其中,目标场景为三维场景和二维场景中未对操作对象执行目标操作的场景。
处理器501还用于检测编辑指令指示在二维场景中执行目标操作还是在三维场景中执行目标操作;若编辑指令指示在二维场景中执行目标操作,则根据更新后的信息更新操作对象在三维场景中的信息;若编辑指令指示在三维场景中执行目标操作,则根据更新后的信息更新操作对象在二维场景中的信息。
处理器501还用于在操作结果为在二维场景中执行目标操作得到时,获取操作对象在二维场景下的经纬度偏移量;根据经纬度偏移量更新操作对象在矢量地图数据中的全局坐标。
处理器501还用于在操作结果为在三维场景中执行目标操作得到,获取操作对象在三维场景下的坐标偏移量;根据坐标偏移量更新操作对象在矢量地图数据中的全局坐标。
处理器501还用于绘制三维场景和二维场景;接收针对第一虚拟相机变换操作,其中,第一虚拟相机用于绘制三维场景,变换操作包括平移、缩放和旋转;根据变换操作更新三维场景和二维场景,其中,二维场景由第二虚拟相机绘制,根据平移更新第一虚拟相机和第二虚拟相机的焦点和位置信息,根据缩放更新第一虚拟相机和第二虚拟相机的位置信息,根据旋转更新第一虚拟相机的朝向信息。
处理器501还用于接收请求信息,其中,请求信息用于请求获取目标道路场景的矢量地图数据;根据请求信息获取与目标道路场景关联的点云数据块;根据点云数据块获取与目标道路场景的矢量地图数据。
处理器501还用于根据请求信息获取点云八叉树的节点数据,其中点云八叉树用于描述点云数据块的空间结构信息;根据节点数据生成点云数据块的请求列表;根据请求列表获取点云数据块。
处理器501还用于判断请求列表是否为空;如果判断出请求列表为空,则重新接收请求信息。
处理器501还用于在缓存队列中查找请求列表中的节点数据所对应的点云数据块;如果未查找到节点数据所对应的点云数据快,则在缓存队列中查找节点数据的父节点所对应的点云数据块;根据父节点所对应的点云数据块,从服务器中获取节点数据所对应的点云数据块。
处理器501还用于在未查找到节点数据的父节点所对应的点云数据块时,将父节点***到请求列表中的最前端;根据***父节点之后的请求列表获取点云数据。
可选地,本实施例中的具体示例可以参考上述实施例1和实施例2中所描述的示例,本实施例在此不再赘述。
实施例4
本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于存储本发明实施例的道路场景地图的构建方法的程序代码。
可选地,在本实施例中,上述存储介质可以位于移动通信网络、广域网、城域网或局域网的网络中的多个网络设备中的至少一个网络设备。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:
S1,接收对矢量地图数据进行编辑的编辑指令,其中,编辑指令用于指示对矢量地图数据中的操作对象执行目标操作;
S2,根据编辑指令在二维场景或三维场景中对操作对象执行目标操作,得到操作结果,其中,二维场景和三维场景中的坐标具有映射关系;
S3,根据操作结果更新操作对象在矢量地图数据中的信息,得到操作对象在矢量地图数据中更新后的信息;
S4,根据更新后的信息对操作对象在目标场景中的信息进行更新,其中,目标场景为三维场景和二维场景中未对操作对象执行目标操作的场景。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行检测编辑指令指示在二维场景中执行目标操作还是在三维场景中执行目标操作;若编辑指令指示在二维场景中执行目标操作,则根据更新后的信息更新操作对象在三维场景中的信息;若编辑指令指示在三维场景中执行目标操作,则根据更新后的信息更新操作对象在二维场景中的信息。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行若操作结果为在二维场景中执行目标操作得到,则获取操作对象在二维场景下的经纬度偏移量;根据经纬度偏移量更新操作对象在矢量地图数据中的全局坐标。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行若操作结果为在三维场景中执行目标操作得到,则获取操作对象在三维场景下的坐标偏移量;根据坐标偏移量更新操作对象在矢量地图数据中的全局坐标。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行绘制三维场景和二维场景;接收针对第一虚拟相机变换操作,其中,第一虚拟相机用于绘制三维场景,变换操作包括平移、缩放和旋转;根据变换操作更新三维场景和二维场景,其中,二维场景由第二虚拟相机绘制,根据平移更新第一虚拟相机和第二虚拟相机的焦点和位置信息,根据缩放更新第一虚拟相机和第二虚拟相机的位置信息,根据旋转更新第一虚拟相机的朝向信息。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行接收请求信息,其中,请求信息用于请求获取目标道路场景的矢量地图数据;根据请求信息获取与目标道路场景关联的点云数据块;根据点云数据块获取与目标道路场景的矢量地图数据。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行根据请求信息获取点云八叉树的节点数据,其中点云八叉树用于描述点云数据块的空间结构信息;根据节点数据生成点云数据块的请求列表;根据请求列表获取点云数据块。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行判断请求列表是否为空;如果判断出请求列表为空,则重新接收请求信息。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行在缓存队列中查找请求列表中的节点数据所对应的点云数据块;如果未查找到节点数据所对应的点云数据快,则在缓存队列中查找节点数据的父节点所对应的点云数据块;根据父节点所对应的点云数据块,从服务器中获取节点数据所对应的点云数据块。
可选地,在本实施例中,处理器根据存储介质中已存储的程序代码执行如果未查找到节点数据的父节点所对应的点云数据块,则将父节点***到请求列表中的最前端;根据***父节点之后的请求列表获取点云数据。
可选地,本实施例中的具体示例可以参考上述实施例1和实施例2中所描述的示例,本实施例在此不再赘述。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (20)
1.一种道路场景地图的构建方法,其特征在于,包括:
接收对矢量地图数据进行编辑的编辑指令,其中,所述编辑指令用于指示对所述矢量地图数据中的操作对象执行目标操作;
根据所述编辑指令在二维场景或三维场景中对所述操作对象执行所述目标操作,得到操作结果,其中,所述二维场景和所述三维场景中的坐标具有映射关系;
根据所述操作结果更新所述操作对象在所述矢量地图数据中的信息,得到所述操作对象在所述矢量地图数据中更新后的信息;
根据所述更新后的信息对所述操作对象在目标场景中的信息进行更新,其中,所述目标场景为所述三维场景和所述二维场景中未对所述操作对象执行所述目标操作的场景。
2.根据权利要求1所述的方法,其特征在于,根据所述更新后的信息对所述操作对象在目标场景中的信息进行更新包括:
检测所述编辑指令指示在所述二维场景中执行所述目标操作还是在所述三维场景中执行所述目标操作;
若所述编辑指令指示在所述二维场景中执行所述目标操作,则根据所述更新后的信息更新所述操作对象在所述三维场景中的信息;
若所述编辑指令指示在所述三维场景中执行所述目标操作,则根据所述更新后的信息更新所述操作对象在所述二维场景中的信息。
3.根据权利要求1所述的方法,其特征在于,根据所述操作结果更新所述操作对象在所述矢量地图数据中的信息,得到所述操作对象在所述矢量地图数据中更新后的信息包括:
若所述操作结果为在所述二维场景中执行所述目标操作得到,则获取所述操作对象在所述二维场景下的经纬度偏移量;
根据所述经纬度偏移量更新所述操作对象在所述矢量地图数据中的全局坐标。
4.根据权利要求1所述的方法,其特征在于,根据所述操作结果更新所述操作对象在所述矢量地图数据中的信息,得到所述操作对象在所述矢量地图数据中更新后的信息包括:
若所述操作结果为在所述三维场景中执行所述目标操作得到,则获取所述操作对象在所述三维场景下的坐标偏移量;
根据所述坐标偏移量更新所述操作对象在所述矢量地图数据中的全局坐标。
5.根据权利要求1所述的方法,其特征在于,在接收对矢量地图数据进行编辑的编辑指令之前,所述方法还包括:
绘制所述三维场景和所述二维场景;
接收针对第一虚拟相机变换操作,其中,所述第一虚拟相机用于绘制所述三维场景,所述变换操作包括平移、缩放和旋转;
根据所述变换操作更新所述三维场景和所述二维场景,其中,所述二维场景由第二虚拟相机绘制,根据所述平移更新所述第一虚拟相机和所述第二虚拟相机的焦点和位置信息,根据所述缩放更新所述第一虚拟相机和所述第二虚拟相机的位置信息,根据所述旋转更新所述第一虚拟相机的朝向信息。
6.根据权利要求1所述的方法,其特征在于,在接收对矢量地图数据进行编辑的编辑指令之前,所述方法还包括:
接收请求信息,其中,所述请求信息用于请求获取目标道路场景的矢量地图数据;
根据所述请求信息获取与所述目标道路场景关联的点云数据块;
根据所述点云数据块获取与所述目标道路场景的矢量地图数据。
7.根据权利要求6所述的方法,其特征在于,根据所述请求信息获取与所述目标道路场景关联的点云数据块包括:
根据所述请求信息获取点云八叉树的节点数据,其中所述点云八叉树用于描述所述点云数据块的空间结构信息;
根据所述节点数据生成所述点云数据块的请求列表;
根据所述请求列表获取所述点云数据块。
8.根据权利要求7所述的方法,其特征在于,在根据所述请求列表获取所述点云数据块之前,所述方法还包括:
判断所述请求列表是否为空;
如果判断出所述请求列表为空,则重新接收所述请求信息。
9.根据权利要求7所述的方法,其特征在于,根据所述请求列表获取所述点云数据块包括:
在缓存队列中查找所述请求列表中的节点数据所对应的点云数据块;
如果未查找到所述节点数据所对应的点云数据快,则在缓存队列中查找所述节点数据的父节点所对应的点云数据块;
根据所述父节点所对应的点云数据块,从服务器中获取所述节点数据所对应的点云数据块。
10.根据权利要求9所述的方法,其特征在于,在缓存队列中查找所述节点数据的父节点所对应的点云数据块之后,所述方法还包括:
如果未查找到所述节点数据的父节点所对应的点云数据块,则将所述父节点***到所述请求列表中的最前端;
根据***所述父节点之后的请求列表获取所述点云数据块。
11.一种道路场景地图的构建装置,其特征在于,包括:
第一接收单元,用于接收对矢量地图数据进行编辑的编辑指令,其中,所述编辑指令用于指示对所述矢量地图数据中的操作对象执行目标操作;
执行单元,用于根据所述编辑指令在二维场景或三维场景中对所述操作对象执行所述目标操作,得到操作结果,其中,所述二维场景和所述三维场景中的坐标具有映射关系;
第一更新单元,用于根据所述操作结果更新所述操作对象在所述矢量地图数据中的信息,得到所述操作对象在所述矢量地图数据中更新后的信息;
第二更新单元,用于根据所述更新后的信息对所述操作对象在目标场景中的信息进行更新,其中,所述目标场景为所述三维场景和所述二维场景中未对所述操作对象执行所述目标操作的场景。
12.根据权利要求11所述的装置,其特征在于,所述第二更新单元包括:
检测模块,用于检测所述编辑指令指示在所述二维场景中执行所述目标操作还是在所述三维场景中执行所述目标操作;
第一更新模块,用于在所述编辑指令指示在所述二维场景中执行所述目标操作时,根据所述更新后的信息更新所述操作对象在所述三维场景中的信息;
第二更新模块,用于在所述编辑指令指示在所述三维场景中执行所述目标操作时,根据所述更新后的信息更新所述操作对象在所述二维场景中的信息。
13.根据权利要求11所述的装置,其特征在于,所述第一更新单元包括:
第一获取模块,用于在所述操作结果为在所述二维场景中执行所述目标操作得到时,获取所述操作对象在所述二维场景下的经纬度偏移量;
第三更新模块,用于根据所述经纬度偏移量更新所述操作对象在所述矢量地图数据中的全局坐标。
14.根据权利要求11所述的装置,其特征在于,所述第一更新单元包括:
第二获取模块,用于在所述操作结果为在所述三维场景中执行所述目标操作得到时,获取所述操作对象在所述三维场景下的坐标偏移量;
第四更新模块,用于根据所述坐标偏移量更新所述操作对象在所述矢量地图数据中的全局坐标。
15.根据权利要求11所述的装置,其特征在于,所述装置还包括:
第一绘制单元,用于在接收对矢量地图数据进行编辑的编辑指令之前,绘制所述三维场景和所述二维场景;
第二接收单元,用于接收针对第一虚拟相机变换操作,其中,所述第一虚拟相机用于绘制所述三维场景,所述变换操作包括平移、缩放和旋转;
第三更新单元,用于根据所述变换操作更新所述三维场景和所述二维场景,其中,所述二维场景由第二虚拟相机绘制,根据所述平移更新所述第一虚拟相机和所述第二虚拟相机的焦点和位置信息,根据所述缩放更新所述第一虚拟相机和所述第二虚拟相机的位置信息,根据所述旋转更新所述第一虚拟相机的朝向信息。
16.根据权利要求11所述的装置,其特征在于,所述装置还包括:
第三接收单元,用于在接收对矢量地图数据进行编辑的编辑指令之前,接收请求信息,其中,所述请求信息用于请求获取目标道路场景的矢量地图数据;
第一获取单元,用于根据所述请求信息获取与所述目标道路场景关联的点云数据块;
第二获取单元,用于根据所述点云数据块获取与所述目标道路场景的矢量地图数据。
17.根据权利要求16所述的装置,其特征在于,所述第一获取单元包括:
第三获取模块,用于根据所述请求信息获取点云八叉树的节点数据,其中所述点云八叉树用于描述所述点云数据块的空间结构信息;
生成模块,用于根据所述节点数据生成所述点云数据块的请求列表;
第四获取模块,用于根据所述请求列表获取所述点云数据块。
18.根据权利要求17所述的装置,其特征在于,所述第一获取单元还包括:
判断模块,用于在根据所述请求列表获取所述点云数据块之前,判断所述请求列表是否为空;
接收模块,如果判断出所述请求列表为空,则重新接收所述请求信息。
19.根据权利要求17所述的装置,其特征在于,所述第四获取模块包括:
第一查找子模块,用于在缓存队列中查找所述请求列表中的节点数据所对应的点云数据块;
第二查找子模块,用于在未查找到所述节点数据所对应的点云数据快时,在缓存队列中查找所述节点数据的父节点所对应的点云数据块;
第一获取子模块,用于根据所述父节点所对应的点云数据块,从服务器中获取所述节点数据所对应的点云数据块。
20.根据权利要求19所述的装置,其特征在于,所述第四获取模块还包括:
***子模块,用于在缓存队列中查找所述节点数据的父节点所对应的点云数据块之后,如果未查找到所述节点数据的父节点所对应的点云数据块,则将所述父节点***到所述请求列表中的最前端;
第二获取子模块,用于根据***所述父节点之后的请求列表获取所述点云数据块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710046770.3A CN108334523B (zh) | 2017-01-20 | 2017-01-20 | 道路场景地图的构建方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710046770.3A CN108334523B (zh) | 2017-01-20 | 2017-01-20 | 道路场景地图的构建方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108334523A CN108334523A (zh) | 2018-07-27 |
CN108334523B true CN108334523B (zh) | 2022-04-12 |
Family
ID=62921657
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710046770.3A Active CN108334523B (zh) | 2017-01-20 | 2017-01-20 | 道路场景地图的构建方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108334523B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109410301A (zh) * | 2018-10-16 | 2019-03-01 | 张亮 | 面向无人驾驶汽车的高精度语义地图制作方法 |
CN109520513B (zh) * | 2018-10-22 | 2020-08-07 | 浙江吉利汽车研究院有限公司 | 一种三维地图绘制方法及装置 |
CN109446640A (zh) * | 2018-10-25 | 2019-03-08 | 国网河南省电力公司濮阳供电公司 | 一种基于激光点云的输电线路电力线建模提取方法 |
CN110727748B (zh) * | 2019-09-17 | 2021-08-24 | 禾多科技(北京)有限公司 | 小体量高精度定位图层的构建、编译及读取方法 |
CN110838178B (zh) * | 2019-11-26 | 2024-01-26 | 北京世纪高通科技有限公司 | 道路场景模型的确定方法及装置 |
CN111009035B (zh) * | 2019-11-28 | 2024-03-08 | 河南艾欧电子科技有限公司 | 模拟场景的创建方法及装置 |
CN111643897B (zh) * | 2020-04-26 | 2023-10-13 | 完美世界(北京)软件科技发展有限公司 | 信息处理方法以及装置、***、设备 |
CN112435333B (zh) * | 2020-10-14 | 2022-03-15 | 腾讯科技(深圳)有限公司 | 一种道路场景的生成方法以及相关装置 |
CN113034685B (zh) * | 2021-03-18 | 2022-12-06 | 北京百度网讯科技有限公司 | 激光点云与高精地图的叠加方法、装置及电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20110099526A (ko) * | 2010-03-02 | 2011-09-08 | (주) 스튜디오라온 | 평면 영상을 입체 영상으로 변환하는 방법 |
CN105247575A (zh) * | 2013-03-15 | 2016-01-13 | 谷歌公司 | 用于在三维场景上叠加二维地图数据的***和方法 |
CN105719343A (zh) * | 2016-01-19 | 2016-06-29 | 上海杰图天下网络科技有限公司 | 一种构建虚拟街景地图的方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2408661B (en) * | 2003-11-27 | 2008-02-06 | Sony Comp Entertainment Europe | Image rendering |
EP2530433B1 (en) * | 2011-06-01 | 2015-04-22 | Harman Becker Automotive Systems GmbH | Method of generating a database for a navigation device |
-
2017
- 2017-01-20 CN CN201710046770.3A patent/CN108334523B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20110099526A (ko) * | 2010-03-02 | 2011-09-08 | (주) 스튜디오라온 | 평면 영상을 입체 영상으로 변환하는 방법 |
CN105247575A (zh) * | 2013-03-15 | 2016-01-13 | 谷歌公司 | 用于在三维场景上叠加二维地图数据的***和方法 |
CN105719343A (zh) * | 2016-01-19 | 2016-06-29 | 上海杰图天下网络科技有限公司 | 一种构建虚拟街景地图的方法 |
Non-Patent Citations (2)
Title |
---|
Extracting roads from dense point clouds in large scale urban environment;Aleksey Boyko 等;《ISPRS Journal of Photogrammetry and Remote Sensing》;20111231;第66卷(第6期);第S2-S12页 * |
基于稀疏点云的ADAS三维地图构建方法;姚远 等;《地理空间信息》;20160731;第14卷(第7期);第59-64页 * |
Also Published As
Publication number | Publication date |
---|---|
CN108334523A (zh) | 2018-07-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108334523B (zh) | 道路场景地图的构建方法和装置 | |
KR102266830B1 (ko) | 차선 결정 방법, 디바이스 및 저장 매체 | |
EP3505869B1 (en) | Method, apparatus, and computer readable storage medium for updating electronic map | |
EP2565583B1 (en) | Navigation device, method of outputting a map, and method of generating a database | |
US20120128205A1 (en) | Apparatus for providing spatial contents service and method thereof | |
CN104867174A (zh) | 一种三维地图渲染显示方法及*** | |
CN105023266A (zh) | 增强现实实现方法、装置和终端设备 | |
CN110887499B (zh) | 一种地图中道路数据和兴趣点数据的处理方法及终端 | |
KR102543871B1 (ko) | 도로정보 변화 영역 보완 방법 및 시스템 | |
CA2711402A1 (en) | Three-dimensional annotations for street view data | |
CN104101348A (zh) | 导航***以及在导航***上显示地图的方法 | |
KR100489890B1 (ko) | 스테레오 비디오 또는/및 지리객체의 상세정보 제공 장치및 그방법 | |
US9243926B2 (en) | Electronic map system | |
CN111143489B (zh) | 基于图像的定位方法及装置、计算机设备和可读存储介质 | |
CN114509065A (zh) | 地图构建方法、***、车辆终端、服务器端及存储介质 | |
CN106996785B (zh) | 一种对导航数据进行更新的方法及装置 | |
CN115164918A (zh) | 语义点云地图构建方法、装置及电子设备 | |
CN116858215B (zh) | 一种ar导航地图生成方法及装置 | |
KR101394425B1 (ko) | 지도 데이터 유지보수 장치 및 방법 | |
CN110827340B (zh) | 地图的更新方法、装置及存储介质 | |
US20130343612A1 (en) | Identifying an area of interest in imagery | |
CN114463499B (zh) | 建筑物三维建模方法及装置 | |
CN115114835B (zh) | 路网数据的漫游展示***、方法、电子设备及存储介质 | |
EP4361565A2 (en) | Method, device, system and computer-readable storage medium for vehicle positioning | |
CN107507236A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |