CN110163065B - 点云数据处理方法、点云数据加载方法、及装置和设备 - Google Patents
点云数据处理方法、点云数据加载方法、及装置和设备 Download PDFInfo
- Publication number
- CN110163065B CN110163065B CN201811474572.8A CN201811474572A CN110163065B CN 110163065 B CN110163065 B CN 110163065B CN 201811474572 A CN201811474572 A CN 201811474572A CN 110163065 B CN110163065 B CN 110163065B
- Authority
- CN
- China
- Prior art keywords
- point cloud
- data
- segment
- section
- road
- 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
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/13—Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
- G06V20/588—Recognition of the road, e.g. of lane markings; Recognition of the vehicle driving pattern in relation to the road
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Multimedia (AREA)
- Processing Or Creating Images (AREA)
Abstract
本公开提供了一种点云数据处理方法,包括:根据路网路段信息将点云数据划分为至少一个点云路段;以及对于所述至少一个点云路段中的每个点云路段,按照预定参数进行体素抽稀并且生成预定数量的点云块,其中,每个点云块的抽稀粒度相同,每个点云块内包括多个不同的数据点,并且不同点云块内包含的数据点各不相同。
Description
技术领域
本公开涉及点云数据处理领域,具体的涉及一种点云数据处理方法、点云数据加载方法、及装置和设备。
背景技术
移动采集车上的车载激光扫描仪可以获取场景的高精度的点云数据,所述点云数据可以达到厘米量级的数据精度。所述激光扫描仪获取的点云数据可以作为高精度地图的重要参考依据,为高精度地图的准确性提供保障。
所述点云数据可以用于恢复高精度地图中的场景的轮廓。例如,获取的点云数据能够清晰的显示出路牙、护栏、路灯杆、标牌等道路元素的位置。然而,随着场景细节的丰富,点云数据包含的数据量也成倍的增加,在实际场景中,几百米范围内的路段对应的点云数据所包含的数据点的数目可以达到千万级别,这对于高精度地图制作系统有极大的挑战。
发明内容
根据本公开的一方面,提供了一种点云数据处理方法,包括:根据路网路段信息将点云数据划分为至少一个点云路段;以及对于所述至少一个点云路段中的每个点云路段,按照预定参数进行体素抽稀并且生成预定数量的点云块,其中,每个点云块的抽稀粒度相同,每个点云块内包括多个不同的数据点,并且不同点云块内包含的数据点各不相同。
根据本公开的另一方面,还提供了一种点云数据加载方法,包括:获取相机位置;根据所述相机位置,确定目标点云路段;根据所述目标点云路段,候选点云路段;以及加载所述目标点云路段和所述候选点云路段的点云数据。
根据本公开的又一方面,还提供了一种点云数据处理装置,包括:路段划分模块,被配置为根据路网路段信息将点云数据划分为至少一个点云路段;以及点云块生成模块,被配置为对于所述至少一个点云路段中的每个点云路段,按照预定参数进行体素抽稀并且生成预定数量的点云块,其中,每个点云块的抽稀粒度相同,每个点云块内包括多个不同的数据点,并且不同点云块内包含的数据点各不相同。
根据本公开实施例,所述路段划分模块包括:轨迹信息获取子模块,被配置为获取所述点云数据的轨迹信息;路段匹配子模块,被配置为将所述轨迹信息与所述路网路段信息进行匹配;划分子模块,被配置为根据所述路段匹配子模块的匹配结果,将点云数据划分为至少一个点云路段。
根据本公开实施例,所述点云块生成模块包括:第一抽稀子模块,被配置为按照第一预定参数对点云路段数据进行体素抽稀,得到抽稀点云路段数据;第二抽稀子模块,被配置为按照第二预定参数对抽稀点云路段数据进行体素抽稀,得到所述预定数量的点云块。
根据本公开实施例,所述点云数据处理装置,还包括:路段连接模块,被配置为对于所述至少一个点云路段中的每个点云路段,生成该点云路段的索引,以及生成该点云路段的点云数据集,其中,该点云数据集包括该点云路段的所述预定数量的点云块、该点云路段的索引、以及与该点云路段相邻的点云路段的索引。
根据本公开的又一方面,还提供了一种点云数据加载装置,包括:获取模块,被配置为获取相机位置;目标点云路段确定模块,被配置为根据所述相机位置,确定目标点云路段;候选点云路段确定模块,被配置为根据所述目标点云路段,确定候选点云路段;加载模块,被配置为加载所述目标点云路段和所述候选点云路段的点云数据。
根据本公开实施例,所述获取模块根据路网路段信息,确定所述相机位置。
根据本公开实施例,每个点云路段的点云数据集包括该点云路段的预定数量的点云块、该点云路段的索引、以及与该点云路段相邻的点云路段的索引,其中,所述目标点云路段确定模块根据所述相机位置以及各个点云路段的索引,确定所述目标点云路段。
根据本公开实施例,所述预定数量的点云块中的每个点云块的粒度相同,每个点云块内包括多个不同的数据点,并且不同点云块内包含的数据点各不相同。
根据本公开实施例,所述点云数据加载装置还包括呈现模块,被配置为呈现所加载的点云数据的至少一部分。
根据本公开实施例,所述呈现模块包括:第一细节层级确定子模块,被配置为确定所述目标点云路段的待呈现细节层级;第一待呈现点云块确定子模块,被配置为根据所述目标点云路段的待呈现细节层级,确定所述目标点云路段的待呈现点云块;第二细节层级确定子模块,被配置为对于每个候选点云路段,根据该候选点云路段与所述目标点云路段之间的邻近程度,确定所述候选点云路段的待呈现细节层级;第二待呈现点云块确定子模块,被配置为根据所述候选点云路段的待呈现细节层级,确定所述候选点云路段的待呈现点云块,其中,所述呈现模块呈现所述目标点云路段的待呈现点云块、以及所述候选点云路段的待呈现点云块。
根据本公开的又一方面,还提供了一种点云数据处理设备,包括:处理器,以及存储器,其包含一组处理器可执行指令,所述指令在由所述处理器执行时使所述设备执行如上所述的点云数据处理方法。
根据本公开的又一方面,还提供了一种点云数据加载设备,包括:处理器,以及存储器,其包含一组处理器可执行指令,所述指令在由所述处理器执行时使所述设备执行如上所述的点云数据加载方法。
附图说明
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了根据本公开实施例的点云数据处理方法的流程图;
图2示出了根据本公开实施例的对点云路段进行体素抽稀的示意图;
图3示出了根据本公开实施例的将点云数据划分为点云路段的流程图;
图4示出了根据本公开实施例的生成预定数量的点云块流程图;
图5示出了根据本公开的一个实施例的对点云路段数据进行体素抽稀的实现流程图;
图6示出了根据本公开的一个实施例的对抽稀点云路段数据进行体素抽稀的示意图;
图7a-图7d示出了呈现点云块的示意图;
图8示出了根据本公开实施例的点云数据集的示意图;
图9示出了利用原始点云数据呈现某一路段场景的示意图;
图10示出了呈现经过八叉树处理方式处理后的点云数据的示意图;
图11示出了根据本公开的点云数据加载方法的流程图;
图12示出了根据本公开实施例的呈现点云数据的至少一部分的流程图;
图13示出了根据本公开实施例的待呈现点云数据集的示意图;
图14示出了点云数据与高精度地图进行叠加的显示效果的示意图;
图15示出了根据本公开一个实施例的基于缓存数据绘制场景的流程图;
图16示出了利用数据队列将点云路段数据加载到数据缓存中的流程图;
图17示出了根据本公开实施例的点云数据处理装置的示例性框图;
图18示出了根据本公开实施例的点云数据加载装置的示例性框图;
图19示出了根据本公开实施例的点云数据处理设备的示例性框图;
图20示出了根据本公开实施例的点云数据加载设备的示例性框图。
具体实施方式
下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本公开一部分的实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在无需创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
本公开中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。同样,“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。
本公开中使用了流程图用来说明根据本公开的实施例的方法的步骤。应当理解的是,前面或后面的步骤不一定按照顺序来精确的进行。相反,可以按照倒序或同时处理各种步骤。同时,也可以将其他操作添加到这些过程中,或从这些过程移除某一步或数步。
传统地图能够在二维方向上显示导航线路、拥堵信息提示、多条路径规划以及预计行驶时间等信息,以满足用户对于路况显示、路径导航等的应用需求。然而,传统地图的精度等级一般为米级,这对于指导车辆安全行驶所需要的数据量来说的完全不够的。
与传统地图相比,高精度地图的精度等级可以达到厘米量级,意味着其能提供更加准确的路况信息,这对于诸如实现无人驾驶等应用来说至关重要。此外,高精度地图中可以包含更多的驾驶辅助信息,其可以实现道路网的精确三维表征。例如,高精度地图可以用于显示交叉路口的布局和路标位置等信息,还可以包含道路限速信息、车辆转弯起始位置等的信息。
利用采集车获取的点云数据由于具有较高的精度等级,而能清晰、准确地显示出诸如路标、车道线等道路特征。由此,可以利用点云数据来制作高精度地图。
目前,对于点云数据进行展示的方式可以包括全数据显示,即在展示点云数据之前不对点云数据进行数据处理,将某一目标场景的点云数据直接加载到场景中,然后进行渲染。通过此种方式展示的场景可以呈现非常丰富的细节信息。示例性地,图9示出了利用点云数据呈现某一路段场景的示意图。图9中不仅包括高精度展示的车道线、路牌、限速等道路信息,还包含路段周围的诸如树木和路灯等的细节信息,从而实现此路段场景的完整展示。
然而,在利用此种方式进行场景绘制时,由于未对点云数据进行诸如分块、抽稀等的处理,使得展示的场景包括的点云数据量非常庞大。例如,在图9中示出的某一路段的场景中,实现一公里长的道路数据的展示所需要的数据点的数目可以达到上亿级别,即用户在查看该路段的点云地图信息时,需要地图平台方提供上亿级别的点云数据量,这极大的增加了场景绘制的要求,并限制了数据加载的效率。
为解决全数据显示方法中的巨大的数据量带来的问题,可以采用八叉树处理方法先对点云数据进行处理,然后再根据显示需求展示经过处理的点云数据。对于要进行呈现的路段场景,八叉树处理方法可以对该场景指定最大渲染层级以及每一级的抽稀粒度等参数,从而对点云数据进行分解,实现大规模三维数据的快速可视化。所述最大渲染层级以及每一级的抽稀粒度可以用于表征场景的细节层级。
图10示出了呈现经过八叉树处理方式处理后的点云数据的示意图。其中,图10中的(a)示出了渲染层级为1时的点云数据显示效果。图10中的(b)示出了具有较高渲染层级的点云数据的显示效果,即,将图10中的(a)呈现长方体区域划分为八个子长方体区域,再对某些子长方体区域再次划分为更小体积的8个子长方体区域,依次类推。如图10中的(b)中所示出的,渲染层级越高的立方体区域内包括的场景细节数据越丰富,即增加了该立方体区域的细节层级。
根据本公开实施例,细节层级越高,则表明该场景中包括的点云数据越多,细节信息越丰富,较低的细节层级则表示场景中包括的点云数据较少。通过对待呈现的场景设定所述细节层级,可以实现场景呈现过程中的资源分配。对于重要场景,增加其细节层级,保证该场景包含丰富的细节信息,对于非重要场景,降低其细节层级,使得其包含较少的点云数据量,从而提高利用点云数据进行场景绘制过程中的数据加载效率。
利用上述八叉树处理方法可以在加载场景的点云数据之前对其进行处理,按照重要性设定细节层级,从而有效控制场景中的点云数据量,提高数据加载的效率。
然而,利用八叉树处理方法获得的场景信息的显示范围受限,并且在如图10中的(b)所示的长方体区域与子长方体区域的连接处,由于渲染层级不同,容易出现割裂的视觉效果,并且呈现不均匀的数据分布,影响点云数据场景呈现的视觉效果。此外,由于八叉树处理方法本身的特性,在不同渲染层级之间的连接处存在数据冗余的问题。
本公开提供了一种点云数据处理方法,将点云数据与路网路段信息相结合,先将点云数据划分为点云路段,并对经过划分的点云路段进行体素抽稀以降低高精度地图的数据量。本公开还提供了一种点云数据加载方法,用于对经过上述点云处理方法处理后的点云数据进行加载,以实现立体场景显示。利用根据本公开的点云数据处理、加载方法,在保证场景的立体显示效果的基础上降低展示的高精度地图的数据量,从而可以提高点云数据场景绘制的效率,并且可以实现场景的显示细节层级一致性,提高立体场景的呈现效果。
图1示出了根据本公开实施例的点云数据处理方法的流程图100。如图1所示出的,在步骤S101,根据路网路段信息将点云数据划分为至少一个点云路段。其中,所述路网路段信息为传统的地图数据信息,其包含大量的路段数据。
通过车载激光等设备进行一次点云数据采集任务所采集到一组点云数据是连续的,例如,每一次采集任务可以是通过采集车来搭载激光设备行驶几十公里甚至几百公里的路程,由此获取的点云数据组包含巨大的数据量。根据本公开的处理方法,可以通过匹配的方式将获取的点云数据与路网路段信息进行匹配,从而将点云数据中的由数据点表示的路段信息与路网路段信息中的路段进行一一对应。通过将点云数据与路网路段信息进行匹配的处理,可以将点云数据划分为若干个点云路段。所述点云路段的划分可以以路口为节点,例如,将每个不同的街道视为一个点云路段。对于距离较长的路段,或者环路路段,还可以根据路段距离来划分点云路段。例如,将实际间隔200米的路段对应于一个点云路段。
通过上述将点云数据与路网路段信息相结合从而将点云数据划分为至少一个点云路段的处理,可以实现对于点云数据的高效管理。此外,经过匹配的点云路段之间具有与实际路段相对应的关联性,由此可以建立不同点云路段之间的关联索引。例如,对于对应于某一条街道的点云路段,可以具有与对应于该街道的相邻街道的点云路段之间的关联索引。
接着,在步骤S102,对于所述至少一个点云路段中的每个点云路段,按照预定参数进行体素抽稀并且生成预定数量的点云块,其中,每个点云块的抽稀粒度相同,每个点云块内包括多个不同的数据点,并且不同点云块内包含的数据点各不相同。
在所述按照预定参数进行体素抽稀处理的过程中,所述预定参数可以对应于实际路段中三维方向上的距离信息,例如,可以将预定参数设定为三维坐标系中X、Y、Z方向上的5厘米,所述5厘米对应于实际路段中的距离。确定点云路段中与实际路段中的5厘米对应的数据点的数目,例如100个数据点,将包括该数目(即,100)的若干数据点抽稀为一个数据点,实现对于点云路段的体素抽稀,从而有效降低点云路段的数据量,即利用经过体素抽稀得到的一个数据点来代表所述若干数据点。所述数据点的数目可以称为抽稀间隔。对于经过体素抽稀处理得到的点云块内,包含有多个不同的数据点。此外,由于用于抽稀的预定参数(例如,5厘米)相同,抽稀间隔(例如,100)相同,从而每个点云块的抽稀粒度相同。不同的点云块内包含的数据点不相同。换句话说,各个点云块内包含有点云数据的不同的数据点,即各个点云块对应于场景中的不同的数据信息。
根据本公开的其他实施例,所述预定参数在X、Y、Z方向还可以设定为不同的数值,例如,可以将预定参数设定为在X方向为5厘米,在Y和Z方向为10厘米。
可选地,根据本公开实施例的点云数据处理方法还可以包括步骤S103,对于所述至少一个点云路段中的每个点云路段,生成该点云路段的索引,以及生成该点云路段的点云数据集。其中,该点云数据集包括该点云路段的所述预定数量的点云块、该点云路段的索引、以及与该点云路段相邻的点云路段的索引。所述索引可以经由在将点云数据与路网路段信息进行匹配的过程中获得。
通过对获取的点云数据与路网路段信息进行匹配,可以将点云数据划分为至少一个点云路段。对于所述点云路段,在与路网路段信息进行匹配后还具有与相邻点云路段之间的关联索引,即与其他点云路段之间的连接关系。例如,所述关联索引可以用于指示道路A的点云路段与道路B的点云路段相邻,道路B的点云路段与道路C的点云路段相邻。
经过如上所述点云数据处理方法可以将获取的数据量庞大的点云数据与路网路段信息相结合,将点云数据按照实际路段划分为点云路段,通过体素抽稀的方式可以进一步降低点云路段数据量,构建细节层级,并且还可以生成相邻点云路段之间的关联索引。
由此可知,根据本公开的点云数据处理方法实现了一种全新的点云数据管理方式,能够更高效组织获取得到的点云数据。通过传统路网对点云数据进行管理,将传统路网与本公开为每个点云路段生成的点云块的点云数据融合,从而融合了传统地图与高清地图的数据。此外,在利用经过所述点云处理方法处理后的点云数据进行场景显示的过程中,还能实现在保证显示效果的基础上,提高数据加载效率,使得二维三维地图的显示和切换流畅。
图2示出了根据本公开实施例的对点云路段进行体素抽稀的示意图,其中,通过所述预定参数可以确定对点云数据进行抽稀的抽稀间隔,例如,实际路段中5厘米的预定参数对应于如图2中示出的抽稀间隔,换句话说,该抽稀间隔内的数据点展示出的路段对应于实际路段中的5厘米的距离。以抽稀间隔为步长确定的立方体内的数据点可以称为一个体素。
根据本公开的一个实施例,所述体素抽稀处理可以将图2中每个体素中加粗示出的顶点确定为代表该体素的抽稀数据点。根据本公开的其他实施例,也可以将体素内的其他点确定为该代表该体素的抽稀数据点,例如,体素内的中心数据点。若抽稀间隔为1米,则表示将1*1*1立方米范围内的所有点抽稀成一个点。例如,若点云数据的数据精度为1厘米且抽稀间隔为5厘米,则表示将5*5*5立方厘米范围的5*5*5个点云数据点抽稀成一个点,此时,抽稀粒度可以表示为5*5*5。即,抽稀粒度为该体素包含的数据点数。
对于步骤S101,图3示出了根据本公开实施例的将点云数据划分为点云路段的流程图。首先,在步骤S1011,获取所述点云数据的轨迹信息。所述点云数据的轨迹信息可以对应于获取该点云数据时的采集车的行车轨迹。所述采集车的运行轨迹可以根据车载定位等装置获得。
接着,在步骤S1012,将所述轨迹信息与所述路网路段信息进行匹配。根据本公开的一个实施例,可以采用相似度匹配算法将采集车的行车轨迹与路网路段信息进行匹配,从而确定采集该点云数据的行车轨迹与路网路段的对应关系,即获取该行车轨迹在路网中所属的路段。例如,在一次采集任务中,搭载激光设备的采集车的运行轨迹对应于从道路A起始,经过道路B,行至道路C。通过与路网路段信息进行匹配,可以得到采集车在该采集任务中获取的点云数据对应于路网路段信息中的道路A至道路C的路段。
然后,在步骤S1013,根据匹配结果,将点云数据划分为至少一个点云路段。如上所述的,经过匹配后的点云数据可以按照行车道路划分为若干个点云路段,或者也可以根据实际路段的距离,例如200米,划分为所述至少一个点云路段。对于较为复杂的路段,也可以按照两个路口之间的道路将点云数据划分成至少一个点云路段。点云数据划分为点云路段的数目可以由采集该组点云数据时的采集轨迹的距离确定。在采集轨迹较长、包含较多道路的情况下,可以将采集道路划分为数目较多的点云路段,从而有效控制每个点云路段包含的点云数据量。
例如,对于上述采集车经过道路A至道路C所采集的点云数据,可以通过与路网路段信息进行匹配处理而被划分为分别对应于道路A、道路B和道路C的点云路段。此外,上述与道路对应的点云路段之间还可以具有空间上的关联索引,例如,道路A的点云路段与道路B的点云路段相邻,道路B的点云路段与道路C的点云路段相邻。
根据本公开的一个实施例,通过与路网路段信息匹配得到的点云路段数据可以与路网路段信息一起存储,或者可以将点云路段数据和与其对应的路段信息关联存储,由此可以实现在显示路网路段信息时同步查找到与各个路段对应的点云路段数据。
根据本公开的另一个实施例,还可以将获取的点云数据存储在点云数据库中,在将点云数据划分为点云路段之后,还可以根据获取该点云路段时对应的轨迹路段信息从点云数据库中查找出具有相同轨迹路段信息的数据块,并利用最新获取的点云路段数据来更新点云数据库中的对应数据库,实现实时更新点云数据库中的数据。
对于步骤S102,图4示出了根据本公开实施例的生成预定数量的点云块流程图。首先,在步骤S1021,按照第一预定参数对点云路段数据进行体素抽稀,得到抽稀点云路段数据。所述按照第一预定参数对点云路段数据进行体素抽稀的示意图可以如图2中所示出的,即根据第一预定参数确定抽稀间隔。根据本公开实施例实施例,所述第一预定参数在三维立体坐标系的三个方向上可以设定为相同的数值,由此,在三个方向上的抽稀间隔相同,由相同的抽稀间隔在三个方向上确定的体素则构成一个正方体。根据本公开的其他实施例,所述第一预定参数在三维立体坐标系的三个方向上还可以设定为不同的数值,由此,在三个方向上的抽稀间隔各不相同,由所述各不相同的抽稀间隔在三个方向上确定的体素则构成一个长方体。
然后,可以将由抽稀间隔确定的体素内的若干数据点抽稀为一个抽稀数据点。在根据本公开的一个实施例中,可以将由抽稀间隔确定的该立方体内的第一个点确定为该体素的抽稀数据点。经过体素抽稀处理得到的该抽稀数据点代表该体素内的数据信息。通过对所述点云路段数据进行体素抽稀处理后得到的所有抽稀数据点组成该点云路段的抽稀点云路段数据。
图5示出了根据本公开的一个实施例对点云路段数据进行体素抽稀的实现流程图200。首先,根据第一预定参数确定该点云路段的抽稀间隔。由抽稀间隔可以将点云路段数据分隔为若干个体素,每个体素内包含若干个数据点。如图5所示,首先在步骤S201,对于点云路段数据内未处理的数据点,根据该点的坐标确定其所属的体素。示例性的,以一维坐标为例,假设第一预定参数为5厘米,若某一未处理的数据点的X轴坐标为8,则可以确定该数据点属于该点云路段中的第2个体素。
接着,在步骤S202,确定该未处理的数据点所属的体素是否包含抽稀数据点。如果该体素已包含抽稀数据点,则进入步骤S203,将该数据点标记为已处理数据点,并进入步骤S205。如果该体素不包含抽稀数据点,表示该数据点为该体素内的第一个经过处理的数据点,则在步骤S204,将该数据点确定为该体素的抽稀数据点,并将该数据点标记为已处理数据点。
接着,在步骤S205,如果确定此点云路段中还包含未处理的数据点,则返回步骤S201,对未处理的数据点进行体素抽稀处理。
如果确定此点云路段不包含未处理的数据点,即表示已经对该点云路段内的所有数据点进行了如图5步骤S201-S204示出的体素抽稀的处理过程,结束此处理流程。经过如图5所示的体素抽稀的处理获得的所有抽稀数据点组成该点云路段的抽稀点云路段数据。
然后,在图4中的步骤S1022,按照第二预定参数对抽稀点云路段数据进行体素抽稀,得到所述预定数量的点云块。步骤S1022中的体素抽稀处理用于实现构建细节层级,即将抽稀点云路段数据划分为若干个点云块。其中,每个点云块的抽稀粒度相同,每个点云块内包括多个不同的数据点,并且不同点云块内包含的数据点各不相同。经过细节层级构建得到的点云块在进行场景呈现的过程中可以实现根据重要性决定其待呈现细节层级的呈现方式。
例如,根据本公开的一个实施例,可以将抽稀点云路段数据进行处理使其具有6层细节层级,即抽稀得到6个点云块。如果确定该抽稀点云路段对应的道路信息较重要,则可以确定该抽稀点云路段的待呈现细节层级为6,即呈现全部6个点云块。由此,呈现出的该道路信息包含该点云路段的全部信息,细节丰富。如果确定该抽稀点云路段对应的道路信息不重要,则可以确定该抽稀点云路段的待呈现细节层级为1,即仅呈现该抽稀点云路段的6个点云块的其中一个点云块。此时,呈现出的该道路的细节信息较少。根据本公开的其他实施例,该可以对抽稀点云路段数据处理以得到其他层级数的细节层级。
通过上述利用体素抽稀构建细节层级的方式,可以有利于实现呈现数据量的有效控制,减少不必要的数据点绘制,提高加载效率。此外,由于仅相应减少了非重要道路的点云数据量,则可以实现在控制数据量的基础上保证呈现效果。
图6示出了根据本公开一个实施例的对抽稀点云路段数据进行体素抽稀的示意图。其中,图6中仅示意性地表示出沿一维方向的抽稀数据点的示意图,需要理解的是,实际抽稀点云路段数据包括三维方向排列的抽稀数据点。
如图6所示,每个正方形表示按照第一预定参数,例如5厘米,进行体素抽稀处理得到的抽稀数据点,其中抽稀间隔为5厘米。假设第二预定参数在三维立体坐标系中的X方向为30厘米,相应的,还可以设定Y和Z方向的上第二预定参数。由此可知,此时在X方向上的抽稀间隔应为30厘米。对应于图6中示出的抽稀数据点,则可以以6个抽稀点为间隔抽取数据点以得到点云块。
根据本公开实施例,可以将图6中的数据点A1、B1、C1…确定为点云块1,将数据点A2、B2、C2…确定为点云块2,以此类推,可以获得6个点云块。其中,对于每个点云块,由于在体素抽稀处理过程中采用的抽稀粒度相同,由此使得所述每个点云块的抽稀粒度相同。此外,如图6所示,每个点云块包含的数据点各不相同。根据本公开的点云数据处理方法得到的点云块之间不存在数据冗余。
由所述获取得到的6个点云块构成该点云路段的6层细节层级,可以根据待展示的场景的重要性来确定用于场景显示的细节层级的层数。细节层级的层数越多,则需要展示越多数目的点云块,展示的场景细节信息约丰富。例如,所述场景的重要性可以根据该路段距离用户观察点的距离远近来决定,即认为距离观察点越近的路段重要性越高。根据本公开的其他实施例,也可以根据其他的标准来确定所述重要性等级。
根据本公开的一个实施例,对某一建筑场景的点云数据进行如上所述的点云数据处理方法的处理,并生成6个点云块。
图7a示出了利用获取的全部点云数据展示该建筑场景的示意图,可以看出,场景内包含丰富的细节信息,建筑轮廓清晰。但是,此种对点云数据进行全显示的方法所需要加载的点云数据量巨大,限制了场景展现过程中的数据加载效率。
图7b示出了对图7a中的点云数据进行如图1所示的点云数据处理方法处理后获取的某一个点云块的示意图,其包含场景的部分数据。相比较地,图7c示出了该点云数据的另一个点云块的示意图。图7b与图7c中展示的点云块具有相同的抽稀粒度,每个点云块内包括多个不同的数据点,并且不同点云块内包含的数据点各不相同。换句话说,各个点云块内包含有点云数据的不同的数据点,即各个点云块对应于场景中的不同的数据信息。如图7b和图7c所示出的,在仅显示一个点云块时,呈现的细节层级则对应为层级1。
图7d示出了包含该场景的全部6个点云块的示意图,即呈现的细节层级对应于6。可以看出,图7d展示的建筑场景的视觉效果与图7a相一致,但是,由于经过了根据本公开的点云处理方法的处理,极大的减少了需要加载的数据量。以如上所述的第一预定参数为5厘米,即图7a中包含的数据点量与图7d中包含的数据点量相比,其数据减少量大约在5*5的量级。
根据本公开的一个实施例,在对点云路段数据进行体素抽稀并且生成预定数量的点云块的之前,还可以对点云路段数据进行坐标变换处理,并对经过坐标变换处理后的点云路段数据进行体素抽稀处理。
例如,可以先将点云路段数据内的坐标点从地心坐标转换为以采集点为中心的局部站心坐标。所述采集点对应采集该点云路段数据时的采集位置。然后,还可以根据采集车行驶方向将站心坐标转换为车载坐标。
对于上述步骤S103,图8示出了根据本公开实施例的点云数据集的示意图,其中,块0-块5表示该点云路段的预定数量的点云块,示例性的,所述预定数量为6。所述点云数据集还包含其所属的点云路段的索引,表示为索引数据块中包含的数据信息。例如,索引数据块中的数据信息可以包含该点云路段对应于实际路段中的位置坐标、道路名称、道路距离、行车方向等信息。此外,所述段云数据集还可以包含与该点云路段相邻的点云路段的索引,例如,相邻1-相邻5数据块,其中可以存储有与此点云路段相邻的路段的信息,通过该索引,可以快速找到与该与此点云路段相邻的路段的点云数据。通过上述索引的方式,可以建立划分后的点云路段之间在实际路网中的关联关系。
此外,本公开实施例还提供了一种点云数据加载方法,用于实现对由上述点云数据处理方法获得点云数据进行加载,从而绘制展示三维场景。
图11示出了根据本公开的点云数据加载方法的流程图300,首先,在步骤S301,获取相机位置,所述相机位置可以表示为观察点的位置坐标,还可以表示为用户检索的想要观察的特定场景的位置,例如,某个车站或者路口。
接着,在步骤S302,根据获取的相机位置来确定目标点云路段,所述目标点云路段可以为该相机位置所处的或者与为该相机位置直接关联的点云路段数据。例如,如果获取的相机位置为路口A,则目标点云路段可以为与该路口A的路段信息对应的点云路段数据。根据本公开的其他实施例,也可以采用其他的方式来确定目标点云路段,例如根据与相机位置的距离来确定目标点云路段。例如,可以将距离相机位置20米内的场景对应的点云路段确定为目标点云路段。由于所述点云路段是通过与路网路段信息匹配获得的,其具有与实际路段信息的关联索引,即所述点云路段与实际路段信息的是对应的,通过所述索引可以快速查找到所需的目标点云路段。
例如,根据本公开的一个实施例,可以根据所述相机位置以及各个点云路段的索引,确定所述目标点云路段。例如,如图8中所示出的索引数据块可以表示该点云路段的索引,其中可以包含该点云路段对应于实际路段中的位置坐标、道路名称、道路距离、行车方向等的数据信息。当将相机位置确定到某个位置坐标后,可以基于路网路段信息,将具有与该位置坐标距离最近的索引的点云路段确定为目标点云路段。
接着,在步骤S303,根据所述目标点云路段,确定候选点云路段。其中,所述候选点云路段可以由与目标点云路段相邻的点云路段组成,候选点云路段的数目可以是一个也可以是多个。
例如,根据本公开的一个实施例,可以将与目标点云路段距离50米内的点云路段确定为候选点云路段。或者,如果确定的目标点云路段为某个路口,还可以将该路口周围的道路确定为候选点云路段。
最后,在步骤S304加载所述目标点云路段和所述候选点云路段的点云数据,加载后的点云路段数据可以用于三维场景绘制,从而形成三维点云地图数据显示。
根据本公开的一个实施例,可以根据路网路段信息,确定相机位置。例如,可以通过路网路段信息对相机进行定位,从而确定该相机位置坐标。
根据本公开的一个实施例,所述点云路段具有点云数据集,所述点云数据集包括该点云路段的预定数量的点云块、该点云路段的索引、以及与该点云路段相邻的点云路段的索引。其中,所述预定数量的点云块中的每个点云块的粒度相同,每个点云块内包括多个不同的数据点,并且不同点云块内包含的数据点各不相同。上述点云数据处理方法中,结合图1和图8对获取点云路段的点云数据集的过程进行了详细的描述,在此不再赘述。
根据本公开的一个实施例,如图11所示,所述点云数据加载方法还可以包括步骤S305,呈现所述目标点云路段和所述候选点云路段的点云数据的至少一部分。在加载了目标点云路段和候选点云路段之后,可以通过场景绘制的方式呈现所述点云路段的全部数据或者仅呈现一部分的点云路段数据。
图12示出了根据本公开实施例的呈现点云数据的至少一部分的流程图400。首先,在步骤S401,确定所述目标点云路段的待呈现细节层级。根据本公开的一个实施例,对于某一路段场景,可以根据获取的相机位置和路段的中心坐标来确定目标点云路段的待呈现细节层级。
例如,通过路网路段信息的定位处理,可以获得相机位置坐标,则可以基于该路段的中心点与所述相机位置坐标之间的距离值D1来确定目标点云路段的待呈现细节层级。如果所述距离值D1较大,诸如100米,即认为该相机位置与该路段的中心点较远,则可以将待呈现细节层级设置为较低的值。假设所述目标点云路段的细节层级数为6,则所述待呈现细节层级的较低的值可以对应于层级1或者层级2。如果所述距离值D1较小,诸如20米,即认为该相机位置与该路段的中心点较近,则可以将待呈现细节层级设置为较高的值,所述较高的值可以对应于层级5或6。
根据本公开的其他实施例,还可以根据目标点云路段索引所指示的该点云路段为位置坐标与相机位坐标置之间的距离值D2来确定目标点云路段的待呈现细节层级。例如,如果所述距离值D2较大,则表明目标点云路段相距于相机位置的观察点较远,可以将该目标点云路段的待呈现细节层级设置为较低的值,如果所述距离值D2较小,可以将该目标点云路段的待呈现细节层级设置为较高的值。
接着,在步骤S402,根据所述目标点云路段的待呈现细节层级,确定所述目标点云路段的待呈现点云块。
根据本公开实施例,每个目标点云路段的细节层级的数量等于该点云路段的点云块的数量,每个目标点云路段的待呈现细节层级的数目等于该点云路段的待呈现点云块的数目。
根据本公开的一个实施例,以具有6个细节层级的目标点云路段为例,所述目标点云路段的待呈现细节层级确定为3,则可以任意的确定所述目标点云路段的待呈现点云块,诸如点云块1-3。
接着,在步骤S403,对于每个候选点云路段,根据该候选点云路段与所述目标点云路段之间的邻近程度,确定所述候选点云路段的待呈现细节层级。根据本公开的一个实施例,所述每个点云路段包含点云数据集,所述点云数据集包含该点云路段的预定数量的点云块、该点云路段的索引、以及与该点云路段相邻的点云路段的索引。
根据本公开实施例,可以根据相邻点云路段之间的索引信息可以确定候选点云路段与目标点云路段之间的邻近程度,例如,可以将与目标点云路段紧密相邻的候选点云路段设置为较高的待呈现细节层级。
此外,根据本公开的其他实施例,还可以人为设定所述目标点云路段的待呈现细节层级和候选点云路段的待呈现细节层级的值。
接着,在步骤S404,根据所述候选点云路段的待呈现细节层级,确定所述候选点云路段的待呈现点云块。根据本公开的实施例,每个候选点云路段的细节层级的数量等于该点云路段的点云块的数量,每个候选点云路段的待呈现细节层级的数量等于该点云路段的待呈现点云块的数量,然后可以根据确定的待呈现点云块的数量来相应的确定待呈现的候选点云路段块。
根据本公开的一个实施例,在确定了所述目标点云路段的待呈现细节层级与候选点云路段块的待呈现细节层级之后,可以将所述待呈现细节层级存储在待呈现点云数据集中,图13示出了根据本公开实施例的待呈现点云数据集的示意图。
图13中以点云路段包含6层细节层级为例,示出了待呈现点云数据集的示意图。根据本公开实施例,所述待呈现点云数据集中包含当前点云路段的待呈现细节层级、当前点云路段的6个数据块(块0-块5)、当前点云路段的索引数据块(索引)以及与相邻点云路段之间的索引关联(相邻1-相邻5)。待呈现细节层级的层数与待呈现点云块的数目相同,在确定了当前点云路段的待呈现细节层级的层数后,即确定了待呈现点云块的数目,然后可以随机挑选相应数目的待呈现点云块。根据上述索引信息可以将当前点云路段与其相邻的点云路段关联起来。
接着,在步骤S405,呈现所述目标点云路段的待呈现点云块、以及所述候选点云路段的待呈现点云块。所述呈现可以对应于利用目标点云路段的待呈现点云块以及所述候选点云路段的待呈现点云块的数据,来绘制三维立体场景的过程。
可选地,在步骤S305中,所述目标点云路段和所述候选点云路段的点云数据的至少一部分还可以作为高精度地图的参考依据,实现对于高精度地图的修正。
根据本公开实施例,为了保证高精度地图的准确性,还可以将原始采集的高精度的点云数据与高精度地图的数据进行叠加,并可以依据叠加的结果对叠加数据中显示出的不一致的路标、车道线等道路特征进行修正。
图14示出了点云数据与高精度地图进行叠加的显示效果的示意图。如图14中所示出的,对于车道线,高精度地图中显示出的效果如实线箭头所指示的,叠加的点云数据中显示出的数据点如点A和B等数据点所显示的,从图中可以看出,对于此路段中的车道线特征,高精度地图与叠加的点云数据一致,即表明高精度地图中此路段的车道线信息是准确的。如果高精度地图中显示的图像特征与作为参考数据的点云数据中的点特征不一致,则表明可能需要对此路段的地图信息进行修正,从而实现由点云数据作为高精度地图的重要参考依据并为高精度地图的生成提供可靠保障。
根据本公开的一个实施例,在需要利用经过上述点云数据处理方法处理后的点云路段信息进行点云加载并绘制时,可以将确定的目标点云路段与候选点云路段中的信息加载在数据缓存中。如果数据缓存为空,则表明,关于待绘制的场景还未将相关数据加载到数据缓存中,此时可以通过数据队列的方式来将相应的点云路段数据加载到数据缓存中。
图15示出了根据本公开一个实施例的基于缓存数据绘制场景的流程图500,图16示出了利用数据队列将点云路段数据加载到数据缓存中的流程图600,以下将结合图15和图16对根据本公开一个实施例的点云数据加载方法进行详细描述。
首先,如图15所示,在步骤S501,可以首先获得相机位置信息,确定当前想要呈现的场景位置坐标。接着,在步骤S502,将点云路段中心与相机位置之间距离值D3最小的点云路段设为起始点云路段,所述点云路段的中心位置可以通过该点云路段的点云数据集来获得,可以将距离相机位置最近的点云路段设为场景的起始位置。
根据本公开的一个实施例,还可以对上述距离值D3设定阈值,如果D3的数值超出设定的阈值,则可以认为相机的位置发生了较大的变化,需要按照图16所示的数据队列的方式来加载缓存数据。
接着,在步骤S503,确定起始点云路段的待呈现细节层级,在步骤S504,确定候选点云路段块及其待呈现细节层级,此步骤依据图12中关于步骤S401-S404的相关描述进行。
根据本公开的一个实施例,对于候选点云路段的数目可以依据细节层级来确定。例如,在确定了起始点云路段之后,可以依据相机位置来设置起始点云路段的待呈现细节层级值,例如,设为6。然后,可以依据索引信息找到与起始点云路段最相邻的候选点云路段1,并为其设置待呈现细节层级值,例如,设为5。然后,继续依据索引信息确定下一候选点云路段2,并设置其待呈现细节层级值为4,以此类推,当候选点云路段的待呈现细节层级值为0时,则停止查找新的候选点云路段。
更具体地,例如,点云路段A-B-C-D-E-F-G-H依序相邻,以点云路段B作为目标点云路段且具有待呈现细节等级6为例,点云路段A和C与点云路段B直接相邻,则点云路段A和C的待呈现细节等级可以为5;点云路段D与点云路段C相邻,则点云路段D的待呈现细节等级可以为4;点云路段E与点云路段D相邻,则点云路段E的待呈现细节等级可以为3;点云路段F与点云路段E相邻,则点云路段F的待呈现细节等级可以为2;点云路段G与点云路段F相邻,则点云路段G的待呈现细节等级可以为1;点云路段H与点云路段G相邻,则点云路段H的待呈现细节等级可以为0,即无需加载和呈现。
接着,在步骤S505,利用上述获取的目标和候选点云路段的全部信息来更新数据缓存,即,将上述确定的数据更新到数据缓存中,以用于场景显示。
接着,在步骤S506,可以基于点云路段缓存数据来实现三维立体场景的绘制。
通过上述步骤,可以实现基于相机位置来不断更新数据缓存中的点云路段的信息,以进行实时地三维场景绘制。
在数据缓存为空的情况下,或者在确定相机的位置发生了较大的变化的情况下,例如,当距离值D3大于设定的阈值的情况下,可以采用图16中示出的数据队列的方式来将相关信息加载在数据缓存中。
首先,在步骤S601,利用路网路段信息获取相机位置坐标,例如,可以通过定位来获取相机位置坐标。接着,在步骤S602,确定起始点云路段及该点云路段的细节层级,例如,设置为K。接着,在步骤S603,将起始点云路段的数据插入到数据队列。
然后,在步骤S604,判断此时数据队列是否为空,如果判断得到数据队列为空,即认为目前没有需要加载到数据缓存中的数据,则结束此流程。
如果判断数据队列不为空,即认为存在需要加载到数据缓存中的点云路段数据,则进入步骤S605。
在步骤S605,取出队首点云路段,存储于数据缓存,并获取其待呈现细节层级值N。在所述数据队列中,可以根据插入的顺序来排列点云路段的数据,例如,将最早插入的点云路段置于队首。
根据本公开的其他实施例,还可以根据待呈现细节层级值来排列点云路段的数据,例如,将待呈现细节层级值最高的点云路段置于队首。
接着,在步骤S606,判断获取的待呈现细节层级值N是否为0,如果不为0,则进入步骤S607,将当前点云阵列的邻近点云路段作为候选点云路段存入数据队列。所述邻近的点云路段可以依据点云数据集中的索引信息获得。如果判断N为0,则转入步骤S604,继续判断数据队列是否为空。
通过上述步骤,可以将所需的点云路段的数据逐个存储到数据缓存中,以用于进行场景绘制。
经过如上所述点云数据加载方法可以高效地加载经过上述点云处理方法获得的点云路段数据,以用于实现三维场景呈现,并基于相机位置、点云路段中存储的索引、细节层级等信息来确定需要加载地目标点云路段以及候选点云路段,还可以确定其待呈现细节层级和待呈现点云块数据,并依据上述信息快速地实现场景绘制。由此,根据所述点云数据加载方法可以实现在保证场景绘制效果的基础上,降低需要加载的数据量,提高数据加载效率。
根据本公开的又一方面,还提供了一种点云数据处理装置,图17示出了根据本公开实施例的点云数据处理装置700的示例性框图。
如图17所示,所述点云数据处理装置包括路段划分模块701和点云块生成模块702。所述路段划分模块701被配置为根据路网路段信息将点云数据划分为至少一个点云路段,所述点云块生成模块702被配置为对于所述至少一个点云路段中的每个点云路段,按照预定参数进行体素抽稀并且生成预定数量的点云块,其中,每个点云块的抽稀粒度相同,每个点云块内包括多个不同的数据点,并且不同点云块内包含的数据点各不相同。
根据本公开实施例,其中,所述路段划分模块可以包括轨迹信息获取子模块7011、路段匹配子模块7012和划分子模块7013。其中,所述轨迹信息获取子模块7011被配置为获取所述点云数据的轨迹信息;所述路段匹配子模块7012被配置为将所述轨迹信息与所述路网路段信息进行匹配;所述划分子模块7013,被配置为根据所述路段匹配子模块的匹配结果,将点云数据划分为至少一个点云路段。
根据本公开实施例,其中,所述点云块生成模块包括第一抽稀子模块7021和第二抽稀子模块7022.其中,所述第一抽稀子模块7021被配置为按照第一预定参数对点云路段数据进行体素抽稀,得到抽稀点云路段数据;所述第二抽稀子模块7022,被配置为按照第二预定参数对抽稀点云路段数据进行体素抽稀,得到所述预定数量的点云块。
根据本公开实施例,所述点云数据处理装置还可以包括路段连接模块703,被配置为对于所述至少一个点云路段中的每个点云路段,生成该点云路段的索引,以及生成该点云路段的点云数据集,其中,该点云数据集包括该点云路段的所述预定数量的点云块、该点云路段的索引、以及与该点云路段相邻的点云路段的索引。
根据本公开的又一方面,还提供了一种点云数据加载装置,图18示出了根据本公开实施例的点云数据加载装置800的示例性框图。所述点云数据加载装置800可以包括获取模块801、目标点云路段确定模块802、候选点云路段确定模块803和加载模块804。其中,所述获取模块801,被配置为获取相机位置;所述目标点云路段确定模块802,被配置为根据所述相机位置,确定目标点云路段;所述候选点云路段确定模块803,被配置为根据所述目标点云路段,确定候选点云路段;所述加载模块804,被配置为加载所述目标点云路段和所述候选点云路段的点云数据。
根据本公开实施例,其中,所述获取模块根据路网路段信息,确定所述相机位置。
根据本公开实施例,其中,每个点云路段的点云数据集包括该点云路段的预定数量的点云块、该点云路段的索引、以及与该点云路段相邻的点云路段的索引,其中,所述目标点云路段确定模块根据所述相机位置以及各个点云路段的索引,确定所述目标点云路段。
根据本公开实施例,其中,所述预定数量的点云块中的每个点云块的粒度相同,每个点云块内包括多个不同的数据点,并且不同点云块内包含的数据点各不相同。
根据本公开实施例,所述点云数据加载装置还可以包括呈现模块805。所述呈现模块805被配置为呈现所述目标点云路段和所述候选点云路段的点云数据的至少一部分。
根据本公开实施例,其中,所述呈现模块805可以包括第一细节层级确定子模块8051、第一待呈现点云块确定子模块8052、第二细节层级确定子模块8053和第二待呈现点云块确定子模块8054。
其中,所述第一细节层级确定子模块8051,被配置为确定所述目标点云路段的待呈现细节层级;所述第一待呈现点云块确定子模块8052,被配置为根据所述目标点云路段的待呈现细节层级,确定所述目标点云路段的待呈现点云块;所述第二细节层级确定子模块8053,被配置为对于每个候选点云路段,根据该候选点云路段与所述目标点云路段之间的邻近程度,确定所述候选点云路段的待呈现细节层级;所述第二待呈现点云块确定子模块8054,被配置为根据所述候选点云路段的待呈现细节层级,确定所述候选点云路段的待呈现点云块,其中,所述呈现模块805呈现所述目标点云路段的待呈现点云块、以及所述候选点云路段的待呈现点云块。
根据本公开的又一方面,还提供了一种点云数据处理设备900,图19示出了根据本公开实施例的点云数据处理设备的示例性框图。
根据本公开实施例,所述点云数据处理设备900可以包括处理器901和存储器902。所述存储器902中包含一组处理器可执行指令,所述指令在由所述处理器执行时使所述设备执行如上所述的点云数据处理方法。
根据本公开的又一方面,还提供了一种点云数据加载设备1000,图20示出了根据本公开实施例的点云数据加载设备的示例性框图。
根据本公开实施例,所述点云数据加载设备1000可以包括处理器1001和存储器1002。所述存储器1002中包含一组处理器可执行指令,所述指令在由所述处理器执行时使所述设备执行如上所述的点云数据加载方法。
根据本公开的又一方面,还提供了一种计算机可读存储介质,其上存储有计算机可读的指令,当利用计算机执行所述指令时执行如上所述的点云数据处理方法。
根据本公开的又一方面,还提供了一种计算机可读存储介质,其上存储有计算机可读的指令,当利用计算机执行所述指令时执行如上所述的点云数据加载方法。
除非另有定义,这里使用的所有术语(包括技术和科学术语)具有与本公开所属领域的普通技术人员共同理解的相同含义。还应当理解,诸如在通常字典里定义的那些术语应当被解释为具有与它们在相关技术的上下文中的含义相一致的含义,而不应用理想化或极度形式化的意义来解释,除非这里明确地这样定义。
以上是对本公开的说明,而不应被认为是对其的限制。尽管描述了本公开的若干示例性实施例,但本领域技术人员将容易地理解,在不背离本公开的新颖教学和优点的前提下可以对示例性实施例进行许多修改。因此,所有这些修改都意图包含在权利要求书所限定的本公开范围内。应当理解,上面是对本公开的说明,而不应被认为是限于所公开的特定实施例,并且对所公开的实施例以及其他实施例的修改意图包含在所附权利要求书的范围内。本公开由权利要求书及其等效物限定。
Claims (14)
1.一种点云数据处理方法,包括:
根据路网路段信息将点云数据划分为至少一个点云路段;以及
对于所述至少一个点云路段中的每个点云路段,按照预定参数进行体素抽稀并且生成预定数量的点云块,
其中,每个点云块的抽稀粒度相同,每个点云块内包括多个不同的数据点,并且不同点云块内包含的数据点各不相同,其中,
所述对于每个点云路段,按照预定参数进行体素抽稀并且生成预定数量的点云块包括:
按照第一预定参数对点云路段数据进行体素抽稀,得到抽稀点云路段数据,其中,所述第一预定参数用于确定点云抽稀间隔;以及
按照第二预定参数对抽稀点云路段数据进行体素抽稀,得到所述预定数量的点云块,其中,所述第二预定参数用于构建点云细节层级。
2.如权利要求1所述的点云数据处理方法,其中,根据路网路段信息将点云数据划分为至少一个点云路段包括:
获取所述点云数据的轨迹信息;
将所述轨迹信息与所述路网路段信息进行匹配;以及
根据匹配结果,将点云数据划分为至少一个点云路段。
3.如权利要求1所述的点云数据处理方法,还包括:
对于所述每个点云路段,生成该点云路段的索引,以及生成该点云路段的点云数据集,
其中,该点云数据集包括该点云路段的所述预定数量的点云块、该点云路段的索引、以及与该点云路段相邻的点云路段的索引。
4.一种点云数据加载方法,其中,所述点云数据是按照如权利要求1-3中任一项所述的点云数据处理方法处理得到的,所述点云数据加载方法包括:
获取相机位置;
根据所述相机位置,确定目标点云路段;
根据所述目标点云路段,确定候选点云路段;以及
加载所述目标点云路段和所述候选点云路段的点云数据。
5.如权利要求4所述的点云数据加载方法,其中,获取相机位置包括:
根据路网路段信息,确定所述相机位置。
6.如权利要求4所述的点云数据加载方法,其中,每个点云路段的点云数据集包括该点云路段的预定数量的点云块、该点云路段的索引、以及与该点云路段相邻的点云路段的索引,
其中,根据所述相机位置确定目标点云路段包括:
根据所述相机位置以及各个点云路段的索引,确定所述目标点云路段。
7.如权利要求6所述的点云数据加载方法,其中,所述预定数量的点云块中的每个点云块的粒度相同,每个点云块内包括多个不同的数据点,并且不同点云块内包含的数据点各不相同。
8.如权利要求6所述的点云数据加载方法,还包括:
呈现所述目标点云路段和所述候选点云路段的点云数据的至少一部分。
9.如权利要求8所述的点云数据加载方法,其中,呈现所述目标点云路段和所述候选点云路段的点云数据的至少一部分包括:
确定所述目标点云路段的待呈现细节层级;
根据所述目标点云路段的待呈现细节层级,确定所述目标点云路段的待呈现点云块;
对于每个候选点云路段,根据该候选点云路段与所述目标点云路段之间的邻近程度,确定所述候选点云路段的待呈现细节层级;
根据所述候选点云路段的待呈现细节层级,确定所述候选点云路段的待呈现点云块;以及
呈现所述目标点云路段的待呈现点云块、以及所述候选点云路段的待呈现点云块。
10.如权利要求9所述的点云数据加载方法,其中,每个点云路段的细节层级的数量等于该点云路段的点云块的数量。
11.一种点云数据处理装置,包括:
路段划分模块,被配置为根据路网路段信息将点云数据划分为至少一个点云路段;以及
点云块生成模块,被配置为对于所述至少一个点云路段中的每个点云路段,按照预定参数进行体素抽稀并且生成预定数量的点云块,
其中,每个点云块的抽稀粒度相同,每个点云块内包括多个不同的数据点,并且不同点云块内包含的数据点各不相同,其中,为了生成预定数量的点云块,所述点云块生成模块被配置为:
按照第一预定参数对点云路段数据进行体素抽稀,得到抽稀点云路段数据,其中,所述第一预定参数用于确定点云抽稀间隔;以及
按照第二预定参数对抽稀点云路段数据进行体素抽稀,得到所述预定数量的点云块,其中,所述第二预定参数用于构建点云细节层级。
12.一种点云数据加载装置,其中,所述点云数据是按照如权利要求1-3中任一项所述的点云数据处理方法处理得到的,所述点云数据加载装置包括:
获取模块,被配置为获取相机位置;
目标点云路段确定模块,被配置为根据所述相机位置,确定目标点云路段;
候选点云路段确定模块,被配置为根据所述目标点云路段,确定候选点云路段;
加载模块,被配置为加载所述目标点云路段和所述候选点云路段的点云数据。
13.一种点云数据处理设备,包括:
处理器,以及
存储器,其包含一组处理器可执行指令,所述指令在由所述处理器执行时使所述设备执行上述权利要求1-3中任一项所述的方法。
14.一种点云数据加载设备,包括:
处理器,以及
存储器,其包含一组处理器可执行指令,所述指令在由所述处理器执行时使所述设备执行上述权利要求4-10中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811474572.8A CN110163065B (zh) | 2018-12-04 | 2018-12-04 | 点云数据处理方法、点云数据加载方法、及装置和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811474572.8A CN110163065B (zh) | 2018-12-04 | 2018-12-04 | 点云数据处理方法、点云数据加载方法、及装置和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110163065A CN110163065A (zh) | 2019-08-23 |
CN110163065B true CN110163065B (zh) | 2022-03-25 |
Family
ID=67645272
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811474572.8A Active CN110163065B (zh) | 2018-12-04 | 2018-12-04 | 点云数据处理方法、点云数据加载方法、及装置和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110163065B (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110789533B (zh) * | 2019-09-25 | 2021-08-13 | 华为技术有限公司 | 一种数据呈现的方法及终端设备 |
WO2021077315A1 (en) * | 2019-10-23 | 2021-04-29 | Beijing Voyager Technology Co., Ltd. | Systems and methods for autonomous driving |
CN113535504B (zh) * | 2020-04-17 | 2023-12-29 | 华为云计算技术有限公司 | 数据抽稀方法及装置 |
CN114253639A (zh) * | 2020-09-23 | 2022-03-29 | 丰图科技(深圳)有限公司 | 数据缓存方法、装置、计算机设备和存储介质 |
CN112417965B (zh) * | 2020-10-21 | 2021-09-14 | 湖北亿咖通科技有限公司 | 激光点云处理方法、电子装置和存储介质 |
CN112862248A (zh) * | 2021-01-06 | 2021-05-28 | 山东旗帜信息有限公司 | 一种路段抽稀方法、设备及介质 |
CN113034685B (zh) * | 2021-03-18 | 2022-12-06 | 北京百度网讯科技有限公司 | 激光点云与高精地图的叠加方法、装置及电子设备 |
CN114299240A (zh) * | 2021-12-20 | 2022-04-08 | 重庆市勘测院 | 一种基于距离阈值的并行点云抽稀方法 |
CN114973910B (zh) * | 2022-07-27 | 2022-11-11 | 禾多科技(北京)有限公司 | 地图生成方法、装置、电子设备和计算机可读介质 |
CN115984827B (zh) * | 2023-03-06 | 2024-02-02 | 安徽蔚来智驾科技有限公司 | 点云感知方法、计算机设备及计算机可读存储介质 |
CN115965928B (zh) * | 2023-03-16 | 2023-07-07 | 安徽蔚来智驾科技有限公司 | 点云特征增强、目标检测方法、设备、介质及车辆 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106780586B (zh) * | 2016-11-14 | 2019-08-27 | 厦门大学 | 一种基于地面激光点云的太阳能潜力评估方法 |
CN108470374B (zh) * | 2018-04-08 | 2022-03-25 | 中煤航测遥感集团有限公司 | 海量点云数据处理方法及装置 |
-
2018
- 2018-12-04 CN CN201811474572.8A patent/CN110163065B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN110163065A (zh) | 2019-08-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110163065B (zh) | 点云数据处理方法、点云数据加载方法、及装置和设备 | |
US11105638B2 (en) | Method, apparatus, and computer readable storage medium for updating electronic map | |
CN108460815B (zh) | 地图道路要素编辑方法和装置 | |
CN111462275B (zh) | 一种基于激光点云的地图生产方法和装置 | |
CN108763287B (zh) | 大规模可通行区域驾驶地图的构建方法及其无人驾驶应用方法 | |
CN102867057B (zh) | 一种基于视觉定位的虚拟向导构建方法 | |
US9529511B1 (en) | System and method of generating a view for a point of interest | |
US7158149B2 (en) | Map data transmitting method, map data transmitting apparatus, information device and map data transmitting system | |
JP2006513407A (ja) | モバイル・ナビゲーション・ユニットのための高度3d視覚化システム及び方法 | |
CN111695488A (zh) | 兴趣面识别方法、装置、设备以及存储介质 | |
CN106780416B (zh) | 一种矢量地形图用于路径规划的方法及装置 | |
BR112018075056B1 (pt) | Método e sistema para obter informações geográficas de uma plataforma em movimento e dispositivo de computação | |
US11402232B2 (en) | Off-viewport location indications for digital mapping | |
CN104101348A (zh) | 导航系统以及在导航系统上显示地图的方法 | |
EP3048421B1 (en) | Method and system for generalising topographical map data | |
CN110136227A (zh) | 高精地图的标注方法、装置、设备及存储介质 | |
KR100976138B1 (ko) | 건축물 이미지의 계층적 매칭 방법, 시스템 및 컴퓨터 판독 가능한 기록 매체 | |
CN105067004A (zh) | 一种基于地形的路径搜索方法 | |
CN114485690A (zh) | 导航地图的生成方法、装置、电子设备及存储介质 | |
US20140044317A1 (en) | Incremental network generation providing seamless network of large geographical areas | |
CN114758086A (zh) | 一种城市道路信息模型的构建方法及装置 | |
CN112665608B (zh) | 道路导航指示方法、装置、计算机设备和存储介质 | |
CN105631038A (zh) | 导航地图的生成方法和系统,及具有该系统的电子设备 | |
Yamamoto et al. | On-demand generalization of road networks based on facility search results | |
CN112084273A (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 |