一种点云数据处理方法、装置、计算机设备及存储介质与流程

文档序号:37208746发布日期:2024-03-05 14:48阅读:14来源:国知局
一种点云数据处理方法、装置、计算机设备及存储介质与流程

本技术涉及点云数据处理的,具体地涉及一种点云数据处理方法、装置、计算机设备及存储介质。


背景技术:

1、随着近年来自动驾驶技术的发展演进,点云卷积已经成为智能化处理识别路况和车辆驾驶信息的重要方法,与传统的神经网络算法不同,点云卷积的优势在于能够直接获取带深度的3d目标信息,从而更加精准地识别和处理更多的传感器信息。

2、点云的概念是从现实中的3d扫描技术而来的。常用的3d扫描技术是激光雷达,激光雷达从发射端发射一些激光,打到被探测的物体上,反射后被接收。通过计算发射和接收的时间差,就可以知道反射点距离摄像头的位置。通过发射许多条激光,我们就可以得到很多个点,这就是点云了。

3、点云通常有如下特征:

4、稀疏性:点云数据仅存在于物体表面。

5、数据缺失:由于遮挡导致部分表面未被探测到。

6、数据噪声:探测器本身的精度或者环境因素导致。

7、非均匀性:由探测器的采样策略、相对位置、探测范围等因素引起。

8、点云的特征可以理解为:

9、排列不变性:重排一遍所有点的输入顺序,所表示的还是同一个点云数据,网络的输出应该相同。

10、点集之间的交互性:点与点之间有未知的关联性。

11、变换不变性:对于某些变换,例如仿射变换,应用在点云上时,不应该改变网络对点云的理解。

12、现有技术中的主流点云卷积处理方法,都会在计算和存储当中充分利用点云数据的稀疏性,即非零数据较少的空间特性,达到优化性能、减少开销的目的,现有的点云卷积方法包括如下步骤:

13、s1:输入原始格式(包含很多的零)点云数据,并将其压缩为紧密摆放的稀疏矩阵形式(包含非零值及其坐标);

14、s2:将压缩后的数据输入到稀疏矩阵运算单元进行计算,通常会实现至少一种的稀疏卷积算法,例如稀疏点云卷积或子流型卷积;

15、s3:将紧密摆放格式的计算结果(包含非零值及其坐标)输出到存储单元,或者直接作为下一次计算的输入;

16、s4:重复步骤2和步骤3,直到完成所有的计算,并将最终运算结果输出(包含非零值及其坐标)到存储单元;

17、s5:将最终运算结果(包含非零值及其坐标)还原为原始格式(包含很多的零)点云数据;具体实现方法是首先从存储单元将最终运算结果(包含非零值及其坐标)读出,再根据最终运算结果的原始格式大小(cxyz),在存储单元中写入一段连续的零,然后根据非零值坐标计算出非零值在原始点云中的位置,将非零值写入对应的地址,这就完成了紧密摆放格式到原始点云格式的还原,称为点云卷积的结果散射(scatter)操作。

18、从上述步骤可以看出,散射(格式还原)操作是点云卷积方法的最后一个步骤,在计算过程中保持数据的紧密摆放格式是为了提高计算效率,而散射操作是在保证这一优化的前提下,将计算结果还原为和输入数据相同的摆放格式,便于实现后续的分类、分割和物体检测等功能,也保证了对计算过程的优化不会影响到计算结果的摆放格式,因此是点云卷积方法的必要步骤。

19、但是目前的格式还原操作有以下问题:

20、1)根据原始格式大小(cxyz),在存储单元中写入一段连续的零,这需要向存储单元大量写入零数据,在点云卷积的方法中所占的时间开销可能很大,而存储单元可能同时需要处理其他步骤的读写操作,更会加剧这一影响;

21、2.根据非零坐标计算出非零值在原始点云中的位置,将非零值写入对应的地址,这需要将多个维度的大小(cxyz)和坐标乘加起来,才能得到一个一维的存储地址,其中涉及的运算量可能无法在专用芯片的单个时钟周期内完成。如果降低时钟频率必然会影响整体计算效率。

22、因此,如何提升点云卷积的计算效率是亟需解决的技术问题。

23、本背景技术描述的内容仅为了便于了解本领域的相关技术,不视作对现有技术的承认。


技术实现思路

1、因此,本发明实施例意图提供一种提高点云数据处理效率的方法和装置,提供一种点云数据处理方法,使得点云数据处理中的格式还原过程中的写零值操作和写非零值操作完全独立,因此写零值的时间能够与点云卷积的稀疏矩阵运算同时进行,在写零值操作和稀疏矩阵运算都完成后直接进行非零值数据的写入,能够将格式还原的时间开销显著减少,提升点云卷积数据的处理效率;进一步地,写非零值操作的存储器地址获取过程,利用多级阶段划分来拆分子任务,从而在不降低时钟频率的情况下保证了每个时钟周期都可以获得一个存储器写地址。

2、在第一方面,本发明实施例提供了一种点云数据处理方法,所述方法包括:获取点云数据并对所述点云数据进行格式压缩;对压缩后的点云数据进行点云卷积运算;完成所有点云数据的卷积运算,获得最终运算结果;将所述最终运算结果还原为原始点云格式;其中,将所述最终运算结果还原为原始点云格式,包括:写零值操作,接收外部配置信号,根据所述最终运算结果规模在存储器写入连续的零;写非零值操作,读取所述最终运算结果中的非零值与所述非零值对应的坐标值,获取所述非零值对应的存储器地址,将所述非零值写入所述对应的存储器地址;其中,所述写零值操作和所述写非零值操作独立进行;所述写零值操作与所述点云卷积运算同时进行。

3、可选的,在所述写零值操作开始时,将状态机从空闲状态切换为写零值状态;写零值结束时,将状态机从写零值状态切换为空闲状态;在所述写非值零操作开始时,将状态机从空闲状态切换为写非零值状态;写非零值结束时,将状态机从写非零值状态切换为空闲状态。

4、可选的,所述外部配置信号至少包括:所述最终运算结果的规模、所述最终运算结果的非零值点数、数据类型、格式还原在存储器的起始地址、写零值开始信号以及写非零值开始信号。

5、可选的,获取所述非零值对应的存储器地址包括:将获取所述非零值对应的存储器地址划分为至少两个阶段分别计算;汇总所述至少两个阶段的计算结果获得所述非零值对应的存储器地址。

6、可选的,所述最终运算结果只包含非零值及所述非零值对应的坐标值。

7、在本发明实施例中,在第二方面,本发明实施例提供了一种点云数据处理装置,所述装置包括:点云数据获取模块,用于获取点云数据,并对所述点云数据进行格式压缩;点云卷积运算单元,用于对压缩后的点云数据进行稀疏点云卷积运算,并获得最终运算结果;存储单元,用于存储所述最终运算结果;格式还原单元,用于将所述最终运算结果还原为原始点云格式;所述格式还原单元包括:状态机模块,用于接收外部配置信号,并控制数字电路的状态切换;写零值模块,用于向所述存储单元发送写零值请求,并保证写零值的正确性;读非零值模块,用于向所述存储单元发送读非零值请求,并保证读非零值的正确性;写非零值模块,用于获得非零值坐标的存储单元地址,向存储单元发送写非零值请求,并保证写非零值的正确性。

8、可选的,所述格式还原单元还包括:非零值缓存模块,用于缓存从所述存储单元读回的非零值及其对应的坐标。

9、可选的,所述状态机模块收到外部配置信号,开始写零值操作,并从空闲状态切换为写零值状态;写零值结束,所述状态机模块上报写零值结束,并从写零值状态切换为所述空闲状态;所述状态机模块收到外部配置信号,开始写非值零操作,并从所述空闲状态切换为写非零值状态;写非零值结束,所述状态机模块上报写非零值结束,并从写非零值状态切换为空闲状态。

10、在第三方面,本发明实施例提供一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现本技术实施例提供的任一所述的点云数据处理方法的步骤。

11、在第四方面,本发明实施例提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现本技术实施例提供的任一所述的点云数据处理方法的步骤。

12、本发明实施例中使用的点云数据处理方法中,通过将写零值操作和写非零值操作独立开来,使得写零值的时间能够与点云卷积的稀疏矩阵运算同时进行,在写零值操作和稀疏矩阵运算都完成后直接进行非零值数据的写入,能够将格式还原的时间开销显著减少,提升点云卷积数据的处理效率;进一步地,写非零值操作的存储器地址获取过程,利用多级阶段划分来拆分子任务,从而在不降低时钟频率的情况下保证了每个时钟周期都可以获得一个存储器写地址。

13、本发明实施例的其他可选特征和技术效果一部分在下文描述,一部分可通过阅读本文而明白。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1