CN111966773A - 管理地图数据的方法、装置、电子设备和存储介质 - Google Patents
管理地图数据的方法、装置、电子设备和存储介质 Download PDFInfo
- Publication number
- CN111966773A CN111966773A CN202010825236.4A CN202010825236A CN111966773A CN 111966773 A CN111966773 A CN 111966773A CN 202010825236 A CN202010825236 A CN 202010825236A CN 111966773 A CN111966773 A CN 111966773A
- Authority
- CN
- China
- Prior art keywords
- point cloud
- node
- map data
- cloud data
- index
- 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
- 238000000034 method Methods 0.000 title claims abstract description 37
- 238000003860 storage Methods 0.000 title claims abstract description 22
- 238000010586 diagram Methods 0.000 description 24
- 238000012545 processing Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 230000008569 process Effects 0.000 description 5
- 238000004590 computer program Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 2
- 230000000717 retained effect Effects 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
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/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9537—Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/05—Geographic models
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Remote Sensing (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Computer Graphics (AREA)
- Instructional Devices (AREA)
- Processing Or Creating Images (AREA)
Abstract
本公开涉及用于管理地图数据的方法、装置、电子设备和存储介质。在一种方法中,针对地理区域的地图数据创建索引,地图数据包括分别在地理区域中的多个位置处采集的多个点云数据,索引包括表示地图数据的根节点、子节点以及叶节点。基于地理区域包括的多个区块中的区块,向根节点添加表示区块的至少一个子节点。向至少一个子节点中的子节点添加分别表示多个点云数据中的一组点云数据的一组叶节点,一组点云数据是在多个位置中的位于区块内的一组位置处采集的。进一步,提供了相应的装置、电子设备和存储介质。利用上述实现方式,可以以更为方便和有效的方式管理地图数据,进而便于地图数据的版本管理。
Description
技术领域
本公开的各实现方式涉及地图管理,更具体地,涉及用于管理基于点云的地图数据的方法、装置、电子设备和存储介质。
背景技术
随着计算机技术和导航技术的发展,目前已经开发出了高清地图服务和基于高清地图数据的车辆导航服务。在此,高清地图数据可以包括道路和周边设施等的三维数据。道路和周边设施可能会被维修并且可能会修建新的道路,因而必须相应地更新地图数据。这导致地图数据将会存在多个版本。高精度地图数据是其他上层应用的基础,地图数据的准确性至关重要。此时,如何更为有效的方式来管理地图数据,成为一个研究热点。
发明内容
期望能够开发并实现一种以更为有效的方式来管理地图数据的技术方案。期望该技术方案能够与现有的应用环境相兼容,从而以更为有效的方式管理各个版本的地图数据。
根据本公开的第一方面,提供了一种用于管理地图数据的方法。在该方法中,针对地理区域的地图数据创建索引,地图数据包括分别在地理区域中的多个位置处采集的多个点云数据,索引包括表示地图数据的根节点、子节点以及叶节点。基于地理区域包括的多个区块中的区块,向根节点添加表示区块的至少一个子节点。向至少一个子节点中的子节点添加分别表示多个点云数据中的一组点云数据的一组叶节点,一组点云数据是在多个位置中的位于区块内的一组位置处采集的。
根据本公开的第二方面,提供了一种用于管理地图数据的装置。该装置包括:索引创建模块,配置用于针对地理区域的地图数据创建索引,所述地图数据包括分别在所述地理区域中的多个位置处采集的多个点云数据,所述索引包括表示所述地图数据的根节点、子节点以及叶节点;子节点创建模块,配置用于基于所述地理区域包括的多个区块中的区块,向所述根节点添加表示所述区块的至少一个子节点;以及叶节点创建模块,配置用于向所述至少一个子节点中的子节点添加分别表示多个点云数据中的一组点云数据的一组叶节点,所述一组点云数据是在所述多个位置中的位于所述区块内的一组位置处采集的。
根据本公开的第三方面,提供了一种电子设备,包括:存储器和处理器;其中存储器用于存储一条或多条计算机指令,其中一条或多条计算机指令被处理器执行以实现根据本公开的第一方面的方法。
根据本公开的第四方面,提供了一种计算机可读存储介质,其上存储有一条或多条计算机指令,其中一条或多条计算机指令被处理器执行实现根据本公开的第一方面的方法。
附图说明
结合附图并参考以下详细说明,本公开各实现方式的特征、优点及其他方面将变得更加明显,在此以示例性而非限制性的方式示出了本公开的若干实现方式。在附图中:
图1示意性示出了其中可以使用根据本公开的示例性实现方式的应用环境的框图;
图2示意性示出了根据本公开的示例性实现方式的用于管理地图数据的过程的框图;
图3示意性示出了根据本公开的示例性实现方式的用于管理地图数据的方法的流程图;
图4示意性示出了根据本公开的示例性实现方式的点云数据的格式的框图;
图5示意性示出了根据本公开的示例性实现方式的用于采集点云数据的采集设备的轨迹的框图;
图6A示意性示出了根据本公开的示例性实现方式的更新前的索引的结构的框图;
图6B示意性示出了根据本公开的示例性实现方式的更新后的索引的结构的框图;以及
图7示出了其中可以实施本公开的一个或多个实现方式的计算设备/服务器的框图。
具体实施方式
下面将参照附图更详细地描述本公开的优选实现。虽然附图中显示了本公开的优选实现,然而应该理解,可以以各种形式实现本公开而不应被这里阐述的实现所限制。相反,提供这些实现是为了使本公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
在本文中使用的术语“包括”及其变形表示开放性包括,即“包括但不限于”。除非特别申明,术语“或”表示“和/或”。术语“基于”表示“至少部分地基于”。术语“一个示例实现”和“一个实现”表示“至少一个示例实现”。术语“另一实现”表示“至少一个另外的实现”。术语“第一”、“第二”等等可以指代不同的或相同的对象。下文还可能包括其他明确的和隐含的定义。
首先参见图1描述本公开的示例性实现方式的应用环境。图1示意性示出了其中可以使用根据本公开的示例性实现方式的应用环境的框图100。在图1中,采集设备110可以沿着道路120移动,以便采集道路信息以及周边环境的信息。通常而言,可以利用一次采集的数据来生成一个版本的地图数据。随着道路以及周边环境的变化,可以再次采集道路和周边环境的信息。
目前已经提出了利用新采集的信息来更新已有的地图数据并形成新版本的技术方案。然而,已有的技术方案不能有效管理各个版本的地图数据。一次错误的更新可能会导致不得不将地图数据回滚到先前版本。因而,期望以更为方便并且有效的方式管理地图数据,以便于执行更新操作。
为了至少部分地解决现有技术中的上述不足,本公开的示例性实现方式提出了为地图数据建立多级索引的技术方案。首先参见图2描述本公开的示例性实现方式的概要。图2示意性示出了根据本公开的示例性实现方式的用于管理地图数据的过程的框图200。在本公开的上下文中,地图数据可以覆盖某个地理区域,并且可以包括分别在该地理区域中的多个位置处采集的多个点云数据。如图2所示,可以将地图数据240所覆盖的地理区域划分为多个区块。尽管在此图2仅示意性示出了一个区块250,其他区块的结构也是类似的。区块250可以包括点云数据260以及262等。在此,点云数据260和262是在多个位置中的位于区块250内的位置处采集的。
可以为地图数据240创建索引,该索引可以包括指向地图数据240的根节点210。在根节点210的下层,根据地理区域所包括的各个区块,可以分别创建子节点220、…、230等。在此,每个子节点可以表示一个区块,例如子节点230可以表示区块250,子节点220可以表示另一区块。进一步,索引可以包括一组叶节点,以用于表示多个点云数据中的一组点云数据。在此,一组点云数据是在多个位置中的位于区块内的一组位置处采集的。具体地,叶节点240可以表示点云数据260,叶节点242可以表示点云数据262,等等。
将会理解,图2中的索引仅仅是示意性的。根据本公开的示例性实现方式,可以将区块250划分至更小区块,并且子节点可以进一步包括表示更小区块一层或者多层子节点。图2所示的多级索引中的节点可以表示整个地理区域中的不同地理区块的相关点云数据。利用本公开的示例性实现方式,可以以较为精细的粒度来管理地图数据,以便在更新地图的过程中可以迅速找到并且替换相应的点云数据。
在下文中,将参见图3描述本公开的示意性实现方式的更多细节。图3示意性示出了根据本公开的示例性实现方式的用于管理地图数据的方法300的流程图。在框310处,针对地理区域的地图数据240创建索引,索引包括表示地图数据的根节点210、子节点以及叶节点。在此,地图数据240包括分别在地理区域中的多个位置处采集的多个点云数据。在下文中,参见图4描述点云数据的格式,该图4示意性示出了根据本公开的示例性实现方式的点云数据的格式的框图400。采集设备110可以沿着轨迹440来采集信息。采集设备110可以在采集点430、432等位置采集信息。
将会理解,采集设备110在每个采集点处可以具有不同的采集位姿。例如,在采集点430处,采集设备110可以具有采集位姿420;在采集点432处,采集设备110可以具有采集位姿422,等等。通常而言,采集设备110在沿着轨迹440移动期间,可以采集道路一侧或者两侧的信息。因而,在此的采集位姿可以包括位置和方向两方面。采集位姿例如可以包括定义位置的(x,y,z)坐标以及定义方向的(pitch,yaw,roll)坐标。
采集设备110在采集位姿420处可以采集点云帧410,在采集位姿422处可以采集点云帧412,等等。为了便于管理,可以将具有相邻采集位姿的点云帧作为一个点云数据260来存储。根据本公开的示例性实现方式,可以基于不同方式来建立点云数据260。例如,可以指定点云数据260中所包括的点云帧的数量(诸如,10帧或者其他数值)。又例如,可以将采集设备110的移动预定距离(例如,2米或者其他数值)期间所采集到的点云帧存储至一个点云数据。
根据本公开的示例性实现方式,可以在数据库中存储地图数据中的多个点云数据。可以存储每个点云数据以下中的一个或多个信息:标识符、采集日期、版本、存储地址以及采集位姿,等等。根据本公开的示例性实现方式,可以将点云数据中的各个采集位姿的转换至中间坐标系,并且将各个采集位姿的中心作为点云数据的采集位姿。可以为点云数据建立数据表,以便存储上述信息。
可以创建根节点,该根节点可以根节点包括:地图数据的标识符。在此,地图数据的标识符可以唯一地表示地图数据。进一步,根节点可以包括以下中的至少任一项:地图数据的版本、采集时间、以及地理区域的标识符。地图数据的版本可以表示地图数据在多次更新期间的版本;采集时间可以表示地图数据被采集的时间以用于支持查找在特定时间被采集的地图数据;以及地理区域标识符可以表示地图数据所在的地理区域。
已经描述了有关根节点相关的信息,在下文中将返回图3描述有关索引的子节点的信息。在图3的框320处,基于地理区域包括的多个区块中的区块,向根节点210添加表示区块的至少一个子节点。将会理解,在此并不限制子节点的数量。基于一个区块,可以向根节点210添加一个子节点,也可以向根节点210添加多个子节点。根据本公开的示例性实现方式,可以按照采集设备的轨迹来划分区块,例如可以将区块设置为采集到的各个点的包围盒。
首先描述区块与子节点一一对应的情况。根据本公开的示例性实现方式,可以向根节点添加表示区块250的子节点230。此时,子节点230可以包括:区块250的标识符以便唯一地标识该区块250。进一步,子节点230可以包括区块250的位置信息,以便表示区块250在地理区域中的位置。根据本公开的示例性实现方式,可以将位置信息直接存储在子节点中。备选地和/或附加地,可以将上述信息存储至数据库中,并且可以利用子节点中的标识符来在在数据库中查找相关的信息。
根据本公开的示例性实现方式,可以以多种方式表示区块的位置信息。例如,可以以诸如地理坐标的绝对位置来表示区块250的位置。具体地,可以利用区块的左上角的坐标、区块的长度和宽度来表示区块250的地理位置。又例如,可以以区块在地理区域中所在的行和列的相对位置,来表示区块250的位置。利用本公开的示例性实现方式,子节点230可以清晰地指示与区块相关联的多方面信息。以此方式,可以便于从索引中找到与各个区块相关联的更多信息。
根据本公开的示例性实现方式,如果区块250的范围较大,和/或出于便于管理等其他原因,可以将区块250划分为更小的多个子区块。可以向子节点230的下一层级添加一个或多个子节点,以便表示多个子区块。此时,区块250将涉及位于多个层级的多个子节点。利用本公开的示例性实现方式,可以以更灵活的方式,在期望的粒度管理区块250。根据本公开的示例性实现方式,根节点210可以进一步包括各个子节点的地址。例如,图2中的根节点210可以包括子节点220、……以及230的地址。利用本公开的示例性实现方式,从索引的根节点210出发,可以迅速找到指向地理区域中的各个区块的子节点。
根据本公开的示例性实现方式,可以将地图数据的版本和采集时间、地理区域的标识符以及各个子节点的地址直接存储在根节点中。备选地和/或附加地,可以将上述信息存储至数据库中,并且可以利用根节点中的地图数据的标识符来在在数据库中查找相关的信息。
已经描述了与子节点相关联的信息,在下文中,将继续参见图3描述向索引中添加叶节点的更多细节。在图3的框330处,向至少一个子节点中的子节点添加分别表示多个点云数据中的一组点云数据的一组叶节点。在此,一组点云数据是在多个位置中的位于区块内的一组位置处采集的。在如图2所示的示例中,可以向子节点230添加叶节点240、……、242的地址。
将会理解,如果沿着同一道路执行了多次采集,则可以按照采集设备的路径来划分区块。此时,多个区块之间可以存在交集。对于新采集到的数据相关的叶节点,即使该叶节点的位置在先前的区块范围内,仍然依据新的采集轨迹来划分区块,并不会将该叶节点添加至先前的区块。以此方式,不同版本的地图数据位于不同的子节点,可以便于管理多个版本的地图数据。
根据本公开的示例性实现方式,叶节点可以包括由叶节点表示的点云数据的标识符。在此标识符用于唯一地指示点云数据,可以利用该标识符来在数据库中查找点云数据的具体存储位置,以便访问点云数据。根据本公开的示例性实现方式,叶节点可以进一步包括以下中的至少任一项:点云数据的存储地址、点云数据的版本、以及用于采集点云数据的位姿。点云数据的存储地址表示点云数据被存储至何处,以此方式,可以直接经由该存储地址来访问点云数据。点云数据的版本可以表示点云数据在多次更新期间的版本,采集时间可以表示点云数据被采集的时间以用于支持查找在特定时间被采集的点云数据。位姿可以表示采集设备110在采集点云数据时的位姿。
将会理解,上文描述的叶节点的格式仅仅是示意性的。根据本公开的示例性实现方式,叶节点可以仅包括点云数据的标识符,并且可以在数据库中存储其他信息。可以利用该标识符来在数据库中查找某个点云数据的多种相关信息。利用本公开的示例性实现方式,当期望访问与某个区块相关联的信息时,通过索引中的子节点和叶节点,可以迅速获得在该区块中采集的全部点云数据的相关信息。
上文已经描述了索引的多级结构,在下文中将描述如何利用索引来管理地图数据的更新。在地理区域中的道路和周边信息出现变化时,可以从采集设备获取被改变部分的信息。具体地,可以基于采集设备在采集新的地图数据时的轨迹,获取与被改变的部分相对应的叶节点的集合。如果确定轨迹中的位姿与索引的给定叶节点的位姿相匹配,则将给定叶节点加入叶节点的集合。换言之,如果给定叶节点的采集位姿与新的采集轨迹相匹配,则该给定叶节点即为将要被更新的叶节点。在此用于采集被改变的点云数据的采集设备可以与用于采集原始点云数据的采集设备是相同的设备,也可以是不同的设备。
在下文中,参见图5描述有确定叶节点的集合的更多信息。图5示意性示出了根据本公开的示例性实现方式的用于采集点云数据的采集设备的轨迹的框图500。假设采集轨迹510是采集设备在采集已有的地图数据时的移动轨迹,并且采集轨迹520是采集设备在采集新的地图数据时的移动轨迹。两个采集轨迹之间存在重叠部分530。此时,已有点云数据中的与重叠部分530相关联的部分即为将要被更新的点云数据。基于将要被更新的点云数据,可以确定被改变部分对应的叶节点的集合。将会理解,在确定叶节点的集合时,需要考虑位置和方向两者。以此方式,可以准确地确定将要被更新的叶节点。
在已经确定将要被更新的叶节点的集合之后,可以利用新采集到的被修改的部分的新的点云数据的集合(即,新采集的点云数据中的与重叠部分530相关联的部分),更新索引。基于被更新的多个叶节点的地理分布,可能会出现多种情况。在一种情况下,被更新的多个叶节点的父节点可能是相同的子节点。此时,如果被修改的部分涉及给定子节点中的全部叶节点,则可以利用基于点云数据的集合创建的新子节点来替换该给定子节点。具体地,可以按照上文描述的方法来创建新的子节点,并且向新的子节点中添加新采集到的点云数据。继而,可以删除被替换的给定子节点。
在一种情况下,被修改的部分可以仅涉及索引的给定子节点中的部分叶节点,此时需要向根节点添加新子节点。在下文中,将参见图6A和图6B描述更新索引的更多细节。图6A示意性示出了根据本公开的示例性实现方式的更新前的索引的结构的框图600A。在图6A中,索引包括根节点210,根节点210具有子节点220、……、以及子节点230。子节点230具有叶节点240、……、以及242。此时,叶节点240指向点云数据260,并且叶节点242指向点云数据262。假设基于位姿的比较已经确定点云数据262被修改,则此时叶节点242是将要被更新的叶节点,并且子节点230中的其他叶节点所表示的点云数据没有被修改。
图6B示意性示出了根据本公开的示例性实现方式的更新后的索引的结构的框图600B。如图6B所示,可以建立新的子节点640,并且可以向新的子节点640添加与被更新的点云数据630相关联的叶节点620。进一步,可以从图6A中的原有子节点230中删除与被更新部分相关联的叶节点242(即,仅保留与未被修改的部分相关联的叶节点240等等),此时原有子节点230将被更新为图6B中的子节点610。在更新索引之后,新的子节点610将包括叶节点240、……,新的子节点640包括叶节点620。此时,叶节点620将表示新采集到的点云数据630。在已经利用新的子节点610替换原有子节点230之后,可以从索引中删除原有子节点230。进一步,可以更新如图6B所示的索引中的各个节点中的版本和采集日期相关的信息。
将会理解,上文仅示意性示出了针对将被更新的一个叶节点的操作过程,将被更新的多个叶节点可能会涉及不同的父节点。可以以类似方式处理叶节点的集合中的将被更新的各个叶节点,下文将不再赘述。以此方式,可以更新索引中的全部待更新内容,进而提供表示当前最新版本的地图数据。
将会理解,在此示例性实现方式中已经从索引中删除了子节点230和叶节点242,并且索引表示当前最新版本的地图数据。在更新过程之前,可以在数据库中保留如图6A所示的索引,并且可以继续保留原有的点云数据262。以此方式,可以利用数据库中存储的历史版本的索引和相关的点云数据,来恢复历史版本的地图数据。
根据本公开的示例性实现方式,可以接收查询历史版本的地图数据的查询请求。此时,可以基于存储的索引以及多个点云数据,提供历史版本的地图数据。假设期望获取由图6A的索引表示的历史版本的地图数据。由于已经在数据库中存储了如图6A所示的索引,可以基于存储的索引来找到与索引中的每个叶节点相对应的点云数据。具体地,以遍历根节点210的每个子节点220、……、以及230,以便找到和各个区块相对应的点云数据。仅以子节点230作为示例,可以经由子节点240找到点云数据260、……、经由子节点242来找到点云数据262。以此方式,可以找到地图数据中的全部点云数据。
在上文中已经参见图2至图6详细描述了根据本公开的方法的示例,在下文中将描述相应的装置的实现。根据本公开的示例性实现方式,提供了一种用于管理地图数据的装置,包括:索引创建模块,配置用于针对地理区域的地图数据创建索引,地图数据包括分别在地理区域中的多个位置处采集的多个点云数据,索引包括表示地图数据的根节点、子节点以及叶节点;子节点创建模块,配置用于基于地理区域包括的多个区块中的区块,向根节点添加表示区块的至少一个子节点;以及叶节点创建模块,配置用于向至少一个子节点中的子节点添加分别表示多个点云数据中的一组点云数据的一组叶节点,一组点云数据是在多个位置中的位于区块内的一组位置处采集的。
根据本公开的示例性实现方式,根节点包括:地图数据的标识符。
根据本公开的示例性实现方式,根节点进一步包括以下中的至少任一项:地图数据的版本、采集时间、地理区域的标识符以及多个子节点的地址。
根据本公开的示例性实现方式,子节点包括:区块的标识符以及一组叶节点的地址。
根据本公开的示例性实现方式,子节点进一步包括以下中的至少任一项:区块的位置信息以及区块的版本、采集时间。
根据本公开的示例性实现方式,一组叶节点中的叶节点包括:由叶节点表示的点云数据的标识符。
根据本公开的示例性实现方式,一组叶节点中的叶节点包括以下中的至少任一项:点云数据的存储地址、点云数据的版本、采集时间、以及用于采集点云数据的采集设备的位姿。
根据本公开的示例性实现方式,采集设备的位姿包括采集设备的位置和方向。
根据本公开的示例性实现方式,该装置进一步包括:叶节点确定模块,配置用于如果地图数据中的一部分被修改,确定与被修改的部分相对应的叶节点的集合;更新模块,配置用于基于被修改的部分的点云数据的集合以及叶节点的集合,更新索引。
根据本公开的示例性实现方式,叶节点确定模块进一步包括:轨迹确定模块,配置用于确定用于采集被修改的部分的采集设备的轨迹;以及集合更新模块,配置用于如果确定轨迹中的采集设备的位姿与索引的给定叶节点的位姿相匹配,将给定叶节点加入叶节点的集合。
根据本公开的示例性实现方式,更新模块包括:替换模块,配置用于如果确定叶节点的集合涉及索引的给定子节点中的全部叶节点,利用基于点云数据的集合创建的新子节点来替换给定子节点。
根据本公开的示例性实现方式,更新模块包括:子节点添加模块,配置用于如果确定点云数据的集合涉及给定子节点中的部分叶节点,向索引添加新子节点;子节点更新模块,向新子节点添加与点云数据的集合相关联的叶节点;以及删除模块,配置用于删除给定子节点中的与被修改的部分相关联的叶节点。
根据本公开的示例性实现方式,该装置进一步包括:存储模块,配置用于在更新所述索引之前,存储索引;接收模块,配置用于接收查询历史版本的地图数据的查询请求;以及提供模块,配置用于基于存储的索引以及多个点云数据,提供历史版本的地图数据。
根据本公开的示例性实现方式,提供了一种电子设备,包括:存储器和处理器;其中存储器用于存储一条或多条计算机指令,其中一条或多条计算机指令被处理器执行以实现上文描述的方法。
图7示出了其中可以实施本公开的一个或多个实现方式的计算设备/服务器700的框图。应当理解,图7所示出的计算设备/服务器700仅仅是示例性的,而不应当构成对本文所描述的实现方式的功能和范围的任何限制。
如图7所示,计算设备/服务器700是通用计算设备的形式。计算设备/服务器700的组件可以包括但不限于一个或多个处理器或处理单元710、存储器720、存储设备730、一个或多个通信单元740、一个或多个输入设备750以及一个或多个输出设备760。处理单元710可以是实际或虚拟处理器并且能够根据存储器720中存储的程序来执行各种处理。在多处理器系统中,多个处理单元并行执行计算机可执行指令,以提高计算设备/服务器700的并行处理能力。
计算设备/服务器700通常包括多个计算机存储介质。这样的介质可以是计算设备/服务器700可访问的任何可以获得的介质,包括但不限于易失性和非易失性介质、可拆卸和不可拆卸介质。存储器720可以是易失性存储器(例如寄存器、高速缓存、随机访问存储器(RAM))、非易失性存储器(例如,只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、闪存)或它们的某种组合。存储设备730可以是可拆卸或不可拆卸的介质,并且可以包括机器可读介质,诸如闪存驱动、磁盘或者任何其他介质,其可以能够用于存储信息和/或数据(例如用于训练的训练数据)并且可以在计算设备/服务器700内被访问。
计算设备/服务器700可以进一步包括另外的可拆卸/不可拆卸、易失性/非易失性存储介质。尽管未在图7中示出,可以提供用于从可拆卸、非易失性磁盘(例如“软盘”)进行读取或写入的磁盘驱动和用于从可拆卸、非易失性光盘进行读取或写入的光盘驱动。在这些情况中,每个驱动可以由一个或多个数据介质接口被连接至总线(未示出)。存储器720可以包括计算机程序产品725,其具有一个或多个程序模块,这些程序模块被配置为执行本公开的各种实现方式的各种方法或动作。
通信单元740实现通过通信介质与其他计算设备进行通信。附加地,计算设备/服务器700的组件的功能可以以单个计算集群或多个计算机器来实现,这些计算机器能够通过通信连接进行通信。因此,计算设备/服务器700可以使用与一个或多个其他服务器、网络个人计算机(PC)或者另一个网络节点的逻辑连接来在联网环境中进行操作。
输入设备750可以是一个或多个输入设备,例如鼠标、键盘、追踪球等。输出设备760可以是一个或多个输出设备,例如显示器、扬声器、打印机等。计算设备/服务器700还可以根据需要通过通信单元740与一个或多个外部设备(未示出)进行通信,外部设备诸如存储设备、显示设备等,与一个或多个使得用户与计算设备/服务器700交互的设备进行通信,或者与使得计算设备/服务器700与一个或多个其他计算设备通信的任何设备(例如,网卡、调制解调器等)进行通信。这样的通信可以经由输入/输出(I/O)接口(未示出)来执行。
根据本公开的示例性实现方式,提供了一种计算机可读存储介质,其上存储有一条或多条计算机指令,其中一条或多条计算机指令被处理器执行以实现上文描述的方法。
这里参照根据本公开实现的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本公开的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理单元,从而生产出一种机器,使得这些指令在通过计算机或其他可编程数据处理装置的处理单元执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其他可编程数据处理装置、或其他设备上,使得在计算机、其他可编程数据处理装置或其他设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其他可编程数据处理装置、或其他设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本公开的多个实现的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
以上已经描述了本公开的各实现,上述说明是示例性的,并非穷尽性的,并且也不限于所公开的各实现。在不偏离所说明的各实现的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实现的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其他普通技术人员能理解本文公开的各实现。
Claims (16)
1.一种用于管理地图数据的方法,包括:
针对地理区域的地图数据创建索引,所述地图数据包括分别在所述地理区域中的多个位置处采集的多个点云数据,所述索引包括表示所述地图数据的根节点、子节点以及叶节点;
基于所述地理区域包括的多个区块中的区块,向所述根节点添加表示所述区块的至少一个子节点;以及
向所述至少一个子节点中的子节点添加分别表示多个点云数据中的一组点云数据的一组叶节点,所述一组点云数据是在所述多个位置中的位于所述区块内的一组位置处采集的。
2.根据权利要求1所述的方法,其中所述根节点包括:所述地图数据的标识符。
3.根据权利要求2所述的方法,其中所述根节点进一步包括以下中的至少任一项:所述地图数据的版本、采集时间、所述地理区域的标识符以及所述多个子节点的地址。
4.根据权利要求1所述的方法,其中所述子节点包括:所述区块的标识符以及所述一组叶节点的地址。
5.根据权利要求4所述的方法,其中所述子节点进一步包括以下中的至少任一项:所述区块的位置信息以及所述区块的版本、采集时间。
6.根据权利要求1所述的方法,其中所述一组叶节点中的叶节点包括:由所述叶节点表示的点云数据的标识符。
7.根据权利要求6所述的方法,其中所述一组叶节点中的叶节点进一步包括以下中的至少任一项:所述点云数据的存储地址、所述点云数据的版本、采集时间、以及用于采集所述点云数据的采集设备的位姿。
8.根据权利要求7所述的方法,其中所述采集设备的位姿包括采集设备的位置和方向。
9.根据权利要求7所述的方法,进一步包括:
如果所述地图数据中的一部分被修改,确定与被修改的所述部分相对应的叶节点的集合;以及
基于被修改的所述部分的点云数据的集合以及所述叶节点的集合,更新所述索引。
10.根据权利要求9所述的方法,其中确定所述叶节点的集合包括:
确定用于采集所述被修改的所述部分的采集设备的轨迹;以及
如果确定所述轨迹中的所述采集设备的位姿与所述索引的给定叶节点的位姿相匹配,将所述给定叶节点加入所述叶节点的集合。
11.根据权利要求9所述的方法,其中更新所述索引包括:如果确定所述叶节点的集合涉及所述索引的给定子节点中的全部叶节点,利用基于所述点云数据的集合创建的新子节点来替换所述给定子节点。
12.根据权利要求9所述的方法,其中更新所述索引包括:
如果确定所述点云数据的集合涉及给定子节点中的部分叶节点,向所述索引添加新子节点;
向所述新子节点添加与所述点云数据的集合相关联的叶节点;以及
删除所述给定子节点中的与被修改的所述部分相关联的叶节点。
13.根据权利要求9所述的方法,进一步包括:
在更新所述索引之前,存储所述索引;
接收查询历史版本的地图数据的查询请求;以及
基于存储的所述索引以及所述多个点云数据,提供所述历史版本的地图数据。
14.一种用于管理地图数据的装置,包括:
索引创建模块,配置用于针对地理区域的地图数据创建索引,所述地图数据包括分别在所述地理区域中的多个位置处采集的多个点云数据,所述索引包括表示所述地图数据的根节点、子节点以及叶节点;
子节点创建模块,配置用于基于所述地理区域包括的多个区块中的区块,向所述根节点添加表示所述区块的至少一个子节点;以及
叶节点创建模块,配置用于向所述至少一个子节点中的子节点添加分别表示多个点云数据中的一组点云数据的一组叶节点,所述一组点云数据是在所述多个位置中的位于所述区块内的一组位置处采集的。
15.一种电子设备,包括:
存储器和处理器;
其中所述存储器用于存储一条或多条计算机指令,其中所述一条或多条计算机指令被所述处理器执行以实现根据权利要求1至13中任一项所述的方法。
16.一种计算机可读存储介质,其上存储有一条或多条计算机指令,其中所述一条或多条计算机指令被处理器执行以实现根据权利要求1至13中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010825236.4A CN111966773A (zh) | 2020-08-17 | 2020-08-17 | 管理地图数据的方法、装置、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010825236.4A CN111966773A (zh) | 2020-08-17 | 2020-08-17 | 管理地图数据的方法、装置、电子设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111966773A true CN111966773A (zh) | 2020-11-20 |
Family
ID=73389035
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010825236.4A Pending CN111966773A (zh) | 2020-08-17 | 2020-08-17 | 管理地图数据的方法、装置、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111966773A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113505139A (zh) * | 2021-09-10 | 2021-10-15 | 成都国星宇航科技有限公司 | 基于单服务的遥感影像自动化更新及历史回溯方法及装置 |
CN113989451A (zh) * | 2021-10-28 | 2022-01-28 | 北京百度网讯科技有限公司 | 高精地图构建方法、装置及电子设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101354261A (zh) * | 2007-07-27 | 2009-01-28 | 北京灵图软件技术有限公司 | 导航系统的数据更新方法、数据更新装置及一种导航系统 |
US9280558B1 (en) * | 2012-01-13 | 2016-03-08 | Yelp Inc. | Revising a map area based on user feedback data |
CN109141446A (zh) * | 2018-07-04 | 2019-01-04 | 百度在线网络技术(北京)有限公司 | 用于获得地图的方法、装置、设备和计算机可读存储介质 |
CN109612475A (zh) * | 2018-10-31 | 2019-04-12 | 百度在线网络技术(北京)有限公司 | 高精度电子地图的更新方法、装置及可读存储介质 |
CN110807028A (zh) * | 2018-08-03 | 2020-02-18 | 伊姆西Ip控股有限责任公司 | 用于管理存储系统的方法、设备和计算机程序产品 |
CN111444163A (zh) * | 2020-03-25 | 2020-07-24 | 汉海信息技术(上海)有限公司 | 一种地图数据管理以及电子地图回滚的方法及装置 |
-
2020
- 2020-08-17 CN CN202010825236.4A patent/CN111966773A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101354261A (zh) * | 2007-07-27 | 2009-01-28 | 北京灵图软件技术有限公司 | 导航系统的数据更新方法、数据更新装置及一种导航系统 |
US9280558B1 (en) * | 2012-01-13 | 2016-03-08 | Yelp Inc. | Revising a map area based on user feedback data |
CN109141446A (zh) * | 2018-07-04 | 2019-01-04 | 百度在线网络技术(北京)有限公司 | 用于获得地图的方法、装置、设备和计算机可读存储介质 |
CN110807028A (zh) * | 2018-08-03 | 2020-02-18 | 伊姆西Ip控股有限责任公司 | 用于管理存储系统的方法、设备和计算机程序产品 |
CN109612475A (zh) * | 2018-10-31 | 2019-04-12 | 百度在线网络技术(北京)有限公司 | 高精度电子地图的更新方法、装置及可读存储介质 |
CN111444163A (zh) * | 2020-03-25 | 2020-07-24 | 汉海信息技术(上海)有限公司 | 一种地图数据管理以及电子地图回滚的方法及装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113505139A (zh) * | 2021-09-10 | 2021-10-15 | 成都国星宇航科技有限公司 | 基于单服务的遥感影像自动化更新及历史回溯方法及装置 |
CN113505139B (zh) * | 2021-09-10 | 2021-12-07 | 成都国星宇航科技有限公司 | 基于单服务的遥感影像自动化更新及历史回溯方法及装置 |
CN113989451A (zh) * | 2021-10-28 | 2022-01-28 | 北京百度网讯科技有限公司 | 高精地图构建方法、装置及电子设备 |
CN113989451B (zh) * | 2021-10-28 | 2024-04-09 | 北京百度网讯科技有限公司 | 高精地图构建方法、装置及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113874852A (zh) | 用于在多主混合事务和分析处理系统中演进大规模数据集的索引 | |
US10795872B2 (en) | Incremental bloom filter rebuild for B+ trees under multi-version concurrency control | |
CN102128628B (zh) | 电子地图的差异分析方法及差异分析装置 | |
US9158803B2 (en) | Incremental schema consistency validation on geographic features | |
Brodal et al. | Cache oblivious distribution sweeping | |
CN113434623B (zh) | 一种基于多源异构空间规划数据的融合方法 | |
US20120030260A1 (en) | Scalable and parallel garbage collection method and system for incremental backups with data de-duplication | |
US10402316B2 (en) | Tracing garbage collector for search trees under multi-version concurrency control | |
EP3312714A1 (en) | Distributed data parallel method for reclaiming space | |
CN111966773A (zh) | 管理地图数据的方法、装置、电子设备和存储介质 | |
CN102128627A (zh) | 电子地图的差异分析方法及差异分析装置 | |
CN111078689B (zh) | 一种非连续型预排序遍历树算法的数据处理方法及系统 | |
CN113434482A (zh) | 数据迁移方法、装置、计算机设备及存储介质 | |
KR101575639B1 (ko) | 지도 서비스를 위한 타일 이미지 갱신 시스템 및 그 방법 | |
CN112269848B (zh) | 一种众包轨迹数据融合方法及装置 | |
CN102831169B (zh) | 地理信息系统中的平面图形关系确定方法及系统 | |
CN106575296B (zh) | 用于托管的分析的动态n维立方体 | |
Glake et al. | Data management in multi-agent simulation systems | |
CN112100175B (zh) | 分区数据定向传递方法及装置 | |
CN114896252A (zh) | 物联网设备的查询方法、装置、计算机设备及存储介质 | |
CN114840539A (zh) | 数据处理方法、装置、设备和存储介质 | |
CN112037328A (zh) | 生成地图中的道路边沿的方法、装置、设备和存储介质 | |
Das et al. | A revisit to the planar subdivision graph: free space detection in a dynamic environment with polygonal obstacles | |
CN112784533B (zh) | 车道组编号生成方法、装置、计算机设备和存储介质 | |
CN114491307B (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 |