数据处理方法、装置及存储介质转让专利

申请号 : CN202110641220.2

文献号 : CN113255559B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 王斌

申请人 : 深圳市速腾聚创科技有限公司

摘要 :

本申请提供了一种数据处理方法、装置及存储介质,其中,方法包括:实时获取闲置计算区块的数量K;K大于或等于1;按照探测数据的预设优先级顺序从缓存堆栈中调取前K个探测数据并输入所述闲置计算区块进行感知计算;根据所述K个探测数据的探测范围之间的边界关系对所述K个探测数据的感知计算结果进行实时融合,输出感知结果。本申请提供的数据处理方法,解决了传感器无法实时对数据进行感知计算的问题。

权利要求 :

1.一种数据处理方法,其特征在于,所述方法包括:实时获取闲置计算区块的数量K;K大于或等于1;

按照探测数据的预设优先级顺序从缓存堆栈中调取前K个探测数据并输入所述闲置计算区块,并按照所述预设优先级顺序在所述闲置计算区块上依次处理所述K个探测数据,其中,每一个所述探测数据对应一个探测范围,通过获取每一个所述探测数据对应的探测范围与预设目标探测范围之间的距离,以及结合每一个所述探测数据的障碍物信息,来确定每一个所述探测数据的优先级,得到所述预设优先级顺序;

根据所述K个探测数据的探测范围之间的边界关系对所述K个探测数据的感知结算结果进行实时融合,输出感知结果;

所述按照探测数据的预设优先级顺序从缓存堆栈中调取前K个探测数据并输入所述闲置计算区块进行感知计算之前,所述方法还包括:将传感器获取的一帧点云数据划分为M个探测数据;其中,M≥K;

每获取一个探测数据则将所述探测数据的数据信息和所述探测数据对应的优先级信息存储到缓存堆栈中。

2.如权利要求1所述的方法,其特征在于,所述将传感器获取的 一帧点云数据划分为M个探测数据,包括:

根据所述传感器的类型确定将一帧点云数据划分为M个探测数据的划分方式;所述划分方式包括以下至少一项:在所述传感器为扫描型传感器的情况下,按照所述扫描型传感器探测一帧点云数据对应的探测周期划分、按照所述扫描型传感器探测一帧点云数据对应的探测范围划分;在所述传感器为非扫描型传感器的情况下,按照所述非扫描型传感器探测一帧点云数据对应的空间区域划分。

3.根据权利要求1所述的方法,其特征在于,所述每获取一个探测数据则将所述探测数据的数据信息和所述探测数据对应的优先级信息存储到缓存堆栈中之前,所述方法还包括:

获取每个探测数据的探测范围;

根据所述每个探测数据对应的探测范围与预设目标探测范围的位置关系确定所述每个探测数据对应的优先级信息。

4.根据权利要求3所述的方法,其特征在于,根据所述每个探测数据对应的探测范围与目标探测范围的位置关系确定每个探测数据对应的优先级信息之前,所述方法还包括:确定所述传感器的探测范围内的一般探测范围和目标探测范围;所述目标探测范围为用户预设的重点探测区域;

所述根据所述每个探测数据的探测范围与目标探测范围的位置关系确定所述每个探测数据对应的优先级信息,包括:确定所述每个探测数据的探测范围是否位于所述目标探测范围内;若所述探测数据的探测范围位于所述目标探测范围内,则所述探测数据对应的优先级为第一优先级;若所述探测数据的探测范围位于所述一般探测范围内,则根据所述探测数据的探测范围与所述目标探测范围的距离确定所述探测数据的优先级,即第二优先级;所述第一优先级高于所述第二优先级。

5.如权利要求3所述的方法,其特征在于,根据所述每个探测数据对应的探测范围与预设目标探测范围的位置关系确定所述每个探测数据对应的优先级信息之后,所述方法包括:

确定所述每个探测数据对应的障碍物信息;

根据所述障碍物信息对所述探测数据的优先级信息进行进一步划分;

所述每个探测数据对应的障碍物信息包括以下至少一项:障碍物的数量信息、障碍物的运动速度信息、障碍物与传感器的距离信息。

6.如权利要求1所述的方法,其特征在于,所述根据所述K个探测数据的探测范围之间的边界关系对所述K个探测数据的感知计算结果进行实时融合,输出感知结果,包括:按照预设优先级顺序将每一个完成感知计算的探测数据发送到区块融合模块,在所述区块融合模块中将当前处理完成后的探测数据与上一个已进行边界融合处理的探测数据进行边界融合处理。

7.一种数据处理装置,其特征在于,所述装置包括:第一获取模块,用于实时获取闲置计算区块的数量K;K大于或等于1;

计算模块,用于按照探测数据的预设优先级顺序从缓存堆栈中调取前K个探测数据并输入所述闲置计算区块,并按照所述预设优先级顺序在所述闲置计算区块上依次处理所述K个探测数据,其中,每一个所述探测数据对应一个探测范围,通过获取每一个所述探测数据对应的探测范围与预设目标探测范围之间的距离,以及结合每一个所述探测数据的障碍物信息,来确定每一个所述探测数据的优先级,得到所述预设优先级顺序;

融合模块,用于根据所述K个探测数据的探测范围之间的边界关系对所述K个探测数据的感知计算结果进行实时融合,输出感知结果;

划分模块,用于在所述计算模块按照探测数据的预设优先级顺序从缓存堆栈中调取前K个探测数据并输入所述闲置计算区块进行感知计算之前,将传感器获取的一帧点云数据划分为M个探测数据;其中,M≥K;

存储模块,用于每获取一个探测数据则将所述探测数据的数据信息和所述探测数据对应的优先级信息存储到缓存堆栈中。

8.一种数据处理装置,其特征在于,包括处理器、存储器以及通信接口:所述处理器与所述存储器、所述通信接口相连;

所述存储器,用于存储可执行程序代码;

所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于执行如权利要求1‑6任一项所述的数据处理方法。

9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1‑6任一项所述的数据处理方法。

说明书 :

数据处理方法、装置及存储介质

技术领域

[0001] 本申请涉及计算机技术领域,尤其涉及一种数据处理方法、装置及存储介质。

背景技术

[0002] 在智能驾驶系统中,感知算法是提供了“眼睛”的功能,是后续预测、决策规划算法的输入,是自动驾驶系统重要的组成部分。当前的感知算法多基于深度学习技术来获得更
好的性能,而运用深度学习技术处理图像数据时,由于图像或视频等分辨率越来越高,导致
计算资源无法进行合理分配,从而难以提高数据处理的实时性。

发明内容

[0003] 本申请实施例提供了一种数据处理方法、装置及存储介质,通过计算资源的合理分配从而提高数据处理的实时性。
[0004] 为解决以上技术问题,本申请包括以下技术方案:
[0005] 第一方面,本申请实施例提供了一种数据处理方法,所述方法包括:
[0006] 实时获取闲置计算区块的数量K;K大于或等于1;
[0007] 按照探测数据的预设优先级顺序从缓存堆栈中调取前K个探测数据并输入所述闲置计算区块进行感知计算;
[0008] 根据所述K个探测数据的探测范围之间的边界关系对所述K个探测数据的感知计算结果进行实时融合,输出感知结果。
[0009] 第二方面,本申请实施例提供了一种数据处理装置,所述装置包括:
[0010] 获取模块,用于实时获取闲置计算区块的数量K;K大于或等于1;
[0011] 计算模块,用于按照探测数据的预设优先级顺序从缓存堆栈中调取前K个探测数据并输入所述闲置计算区块进行感知计算;
[0012] 融合模块,用于根据所述K个探测数据的探测范围之间的边界关系对所述K个探测数据的感知计算结果进行实时融合,输出感知结果。
[0013] 第三方面,本申请实施例提供了另一种数据处理装置,所述数据处理装置包括处理器、存储器以及通信接口:
[0014] 所述处理器与所述存储器、所述通信接口相连;
[0015] 所述存储器,用于存储可执行程序代码;
[0016] 所述处理器通过读取所述存储器中存储的可执行程序代码来运行与所述可执行程序代码对应的程序,以用于执行:
[0017] 实时获取闲置计算区块的数量K;K大于或等于1;
[0018] 按照探测数据的预设优先级顺序从缓存堆栈中调取前K个探测数据并输入所述闲置计算区块进行感知计算;
[0019] 根据所述K个探测数据的探测范围之间的边界关系对所述K个探测数据的感知计算结果进行实时融合,输出感知结果。
[0020] 第四方面,本申请实施例提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如上述第一方面提供的数据处理方法。
[0021] 本申请提供了一种数据处理方法,通过对传感器探测范围内的整帧数据进行拆分,并按照预设优先级顺序对拆分后的探测数据进行计算,计算后发送至融合模块进行融
合,最后输出数据处理结果,本申请提供的数据处理方法,通过将整帧数据进行拆分,从而
缩短了拆分后的每个探测数据的探测时间,实现了提高对数据进行感知计算的实时性。

附图说明

[0022] 为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本
申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以
根据这些附图获得其他的附图。
[0023] 图1是本申请实施例提供的一种数据处理方法的应用场景示意图;
[0024] 图2是本申请实施例提供的一种传感器安装位置示意图;
[0025] 图3是本申请实施例提供的一种数据处理方法的流程示意图;
[0026] 图4是本申请实施例提供的一种旋转机械式激光雷达对一帧数据拆分成多个探测数据的示意图;
[0027] 图5是本申请实施例提供的一种MEMS固态激光雷达对一帧数据拆分成多个探测数据示意图;
[0028] 图6A是本申请实施例提供的一种摄像头对一帧数据拆分成多个探测数据示意图;
[0029] 图6B是本申请实施例提供的一种摄像头对一帧数据拆分成多个探测数据另一种示意图;
[0030] 图7是本申请实施例提供的一种扫描型传感器的数据处理方法的流程示意图;
[0031] 图8是本申请实施例提供的一种非扫描型传感器的数据处理方法的流程示意图;
[0032] 图9是本申请实施例提供的一种数据处理装置示意图;
[0033] 图10是本申请实施例提供的另一种数据处理装置示意图。

具体实施方式

[0034] 为使本申请的上述目的、特征和优点能够更加明显易懂,下面将结合附图对本申请的具体实施方式做详细说明。
[0035] 本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变
形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或
设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选
地还包括对于这些过程、方法、产品或设备固有的其他步骤或单元。
[0036] 请参考图1及图2所示,图1是本申请实施例提供的一种数据处理方法的应用场景示意图,该应用场景示意图包括传感器10和车辆20,本申请提供的数据处理方法应用于传
感器10。其中,车辆20上安装传感器10。如图2所示,图2是本申请实施例提供的一种传感器
的安装位置示意图。
[0037] 传感器10可以包括扫描型传感器和非扫描型传感器,用于获取传感器探测范围内的点云数据,对获取的点云数据进行处理。其中,扫描型传感器可以包括但不限于是激光雷
达,例如微机电系统(Micro‑Electro‑Mechanical System,MEMS)固态激光雷达、旋转机械
式扫描激光雷达等,非扫描型传感器可以包括但不限于是图像传感器、固态激光雷达,其中
图像传感器例如可以为数字摄像头、模拟摄像头等,固态激光雷达例如可以为flash激光雷
达。在本申请实施例中,自动驾驶感知系统可以由一个传感器10组成。其中,如图2所示,当
传感器10进行前向采集点云数据采集时,可以安装在A所示的位置,可以理解的是,传感器
10也可以安装在B所示的位置。在本申请实施例中,不对传感器10的具体安装位置进行限
制。可以理解的是,本申请实施例中,如图2所示,自动驾驶感知系统也可以由多个传感器组
成,其中,当所述自动驾驶感知系统由多个传感器组成时,其中,所述自动驾驶感知系统包
括的传感器数量和类型具体不做限制。传感器10可以为自动驾驶感知系统中的任意一个传
感器,本申请不对自动驾驶感知系统的具体组成形式进行限制。
[0038] 车辆20可以包括轿车、客车、半挂车、越野车、专用汽车、载货汽车、牵引车、自卸汽车或其他任何车等种类的车辆,这里不对车辆20的种类、类型或者型号做限制。在本申请实
施例中,车辆可以在十字路口、交叉路口、高速公路等不影响通行的道路上行驶。在本申请
实施例中,车辆20可以通过传感器10获取预设探测范围内的点云数据,由传感器10对获取
的点云数据进行处理,并将处理结果显示在车载终端上。
[0039] 接下来将全部结合图1出示的数据处理方法的应用场景示意图及图2出示的传感器安装位置示意图来介绍本申请实施例提供的数据处理方法。
[0040] 请参考图3所示,图3是本申请实施例中的一种数据处理方法的流程示意图,所述方法包括:
[0041] S301、实时获取闲置计算区块的数量K;K大于或等于1。
[0042] 具体地,传感器内部的任务调度系统实时探测多个计算区块中的闲置区块,并获取闲置计算区块的数量K,其中,K大于或等于1。其中,传感器内部的计算模块包括多个计算
区块,各个计算区块之间进行感知计算的过程互不干扰。
[0043] S302、按照探测数据的预设优先级顺序从缓存堆栈中调取前K个探测数据并输入所述闲置计算区块进行感知计算。
[0044] 具体地,传感器在获取闲置计算区块的数量K后,根据闲置计算区块的数量,从缓存堆栈中调取前K个探测数据,将这K个探测数据按照预设优先级顺序输入闲置计算区块中
进行感知计算。
[0045] 进一步地,所述按照探测数据的预设优先级顺序从缓存堆栈中调取前K个探测数据并输入所述闲置计算区块进行感知计算之前,所述方法还包括:将一帧点云数据划分为M
个探测数据;其中,M≥K;每获取一个探测数据则将所述探测数据的数据信息和所述探测数
据对应的优先级信息存储到缓存堆栈中。
[0046] 进一步地,所述将一帧点云数据划分为M个探测数据,包括:根据所述传感器的类型确定将一帧点云数据划分为M个探测数据的划分方式;其中,划分方式包括以下至少一
项:在所述传感器为扫描型传感器的情况下,按照所述扫描型传感器探测一帧点云数据对
应的探测时间划分、按照所述扫描型传感器探测一帧点云数据对应的探测角度划分或者按
照所述扫描型传感器探测一帧点云数据对应的探测时间和空间区域划分;在所述传感器为
非扫描型传感器的情况下,按照所述非扫描型传感器探测探测一次获得的探测数据对应的
空间区域划分。
[0047] 进一步地,所述将一帧点云数据划分为M个探测数据之后,还包括:按照预设优先级顺序依次获取所述M个探测数据;所述按照预设优先级顺序依次获取所述M个探测数据,
包括:在所述传感器为扫描型传感器的情况下,确定每一个探测数据对应的探测时间,按照
各所述探测时间的先后顺序依次获取传感器的探测范围内的M个探测数据。在所述传感器
为扫描型传感器的情况下,确定每一个探测数据对应的探测角度,按照各所述探测角度的
先后顺序依次获取传感器的探测范围内的M个探测数据。在所述传感器为扫描型传感器的
情况下,确定每一个探测数据对应的探测时间和空间区域,根据各所述探测时间的先后顺
序及所述空间区域的优先级顺序确定每一个探测数据对应的优先级顺序,按照所述优先级
顺序依次获取传感器的探测范围内的M个探测数据。在所述传感器为非扫描型传感器的情
况下,确定每一个探测数据对应的空间区域,按照所述空间区域的优先级顺序依次获取传
感器的探测范围内的M个探测数据。
[0048] 具体地,对于扫描型传感器,例如MEMS固态激光雷达,是通过振镜的简谐振动进行扫描的,其扫描路径从空间顺序上来说实现的例如可以是一个慢轴从上到下,快轴从左到
右往复的一个扫描视场。再举例来说,机械式激光雷达是通过机械驱动装置带动光学系统
进行360度旋转实现的扫描的,以激光雷达为圆心的一个圆柱形探测区域。而对于非扫描型
传感器,例如摄像头,是通过内部的感光组件电路及控制组件对图像进行处理并转换成电
脑所能识别的数字信号,然后借由并行端口或USB连接输入到电脑后由软件再进行图像还
原。
[0049] 如图4出示的示意图,以扫描型传感器中的机械式激光雷达为例,由于机械式激光雷达是通过机械驱动装置带动光学系统进行360度旋转实现扫描的,以激光雷达为圆心的
一个圆柱形探测区域。因此,机械式激光雷达旋转360°对应的探测范围为探测一帧数据对
应的的探测范围,所以对机械式激光雷达一个周期探测范围的划分一般以旋转度数的划
分。若N等于6时,按照等分原则,则可将该机械式激光雷达探测的一帧数据划分为6个探测
数据,即每一个探测数据对应60°,也就是说,该机械式激光雷达每旋转60°形成一个探测数
据,即图中的五个探测数据401、402、403、404、405、406各自均为60°。
[0050] 如图5出示的示意图,以扫描型传感器中的MEMS固态激光雷达为例,由于MEMS固态激光雷达是通过振镜的简谐振动进行扫描的,其扫描路径从空间顺序上来说实现的例如可
以是一个慢轴从上到下,快轴从左到右往复的一个扫描视场。因此,对于MEMS固态激光雷达
的探测范围的划分通过是对慢轴对应的视场角进行划分,若MEMS固态激光雷达的慢轴对应
的垂直视场角为‑12.5°12.5°,假设N等于5,则MEMS固态激光雷达在慢轴上每扫描5°则形
~
成一个探测数据,即图中的501、502、503、504、505均为5°。
[0051] 如图6A及6B出示的示意图,以非扫描型传感器中的摄像头为例,对于摄像头采集点云数据的时刻是同步的,因此,对于摄像头采集一帧数据一般进行空间区域的划分,且其
中一种划分方式可以是按照空间区域的重要性进行划分。如图6A所示,可根据该摄像头采
集的点云数据中空间区域的重要性对获取的一帧数据进行划分,得到图6B中所示的拆分后
的探测数据与图像中空间位置对应的示意图。其中,空间区域的重要性可以根据车辆的行
驶方向进行确定,例如可以按照以车辆行驶的正前方中心为空间区域优先级排名第一的区
域,结合车辆前进方向确定其他空间区域的优先级顺序,以图6B所示的摄像头获取的点云
数据为例,若该车辆当前正在路上向正前方行驶,则可将车辆视野的正中心作为空间区域
优先级第一的探测数据,然后将视野中心下方的区域作为空间区域优先级第二的探测数
据,然后将视野左右方的区域作为空间区域优先级第三和第四的探测数据,按照上述划分
方式可将该摄像头采集的一帧数据划分为9个探测数据,其空间区域的优先级顺序如图中
数字对应的顺序。需要说明的是,本申请实施例中,对于摄像头采集的点云数据划分成探测
数据的数量,本申请对该数量不做限定,且在按照空间区域重要性的划分时,每一个探测数
据对应的优先级顺序也不限于是按照上述重要性顺序排列的,还可以包括其他所有合理的
优先级顺序。此外,对于摄像头采集的一帧数据进行划分时,可以平均分成多个探测数据,
也可以不对其进行均分,具体可结合车辆行驶情况进行相应的设置,本申请对此不做限定。
[0052] 可选地,对于扫描型传感器,还可以根据传感器扫描一帧数据时间及空间区域进行划分,结合时间及空间划分时,首先确定对于每一个探测数据在时间和空间上的划分方
式,即确定每一个探测数据对应的探测时间,再根据车辆具体行驶方向及行驶环境等信息
确定空间区域的优先级顺序,再结合时间和空间确定每一个探测数据最终的优先级顺序。
本申请实施例对时间结合空间区域进行划分一帧数据的划分方式不做限定。
[0053] 进一步地,在划分一帧点云数据时,可以自定义划分,还可以等分,在进行等分时,即将探测一帧数据对应的探测范围进行N等分。以扫描型传感器激光雷达为例,若激光雷达
的探测一帧数据对应的时间为T,则激光雷达每运行T/N时间,则获取激光雷达在T/N时间内
扫描得到的点云数据。可以理解的是,预设规则也可以为时间从长逐渐到短的排列的。举例
来说,若机械式激光雷达运行周期为100ms,若N为5的话,则5个探测子范围对应的运行时间
例如依次可以为:30、25、20、15、10。可以理解的是,所述预设规则也可以为时间从短逐渐到
长的排列。举例来说,若机械式激光雷达运行周期为100ms,若N为5的话,则5个探测子范围
对应的运行时间例如依次可以为:10、15、20、25、30。以非扫描型传感器摄像头为例,对于摄
像头获取的一帧数据,可以对其均分,也可以不对其进行均分,若不对摄像头获取的一帧数
据进行均分,则可以根据一帧数据中空间区域的重要性对这一帧数据进行划分,其中,重要
性顺序的设定规则可以由用户预先设定,本申请对此不做限定。
[0054] 进一步地,所述每获取一个探测数据则将所述探测数据的数据信息和所述探测数据对应的优先级信息存储到缓存堆栈中之前,所述方法还包括:获取每个探测数据的探测
范围;根据所述每个探测数据对应的探测范围与预设目标探测范围的位置关系确定所述每
个探测数据对应的优先级信息。
[0055] 进一步地,根据所述每个探测数据对应的探测范围与目标探测范围的位置关系确定每个探测数据对应的优先级信息之前,所述方法还包括:
[0056] 确定所述传感器的探测范围内的一般探测范围和目标探测范围;所述目标探测范围为用户预设的重点探测区域;
[0057] 所述根据所述每个探测数据的探测范围与目标探测范围的位置关系确定所述每个探测数据对应的优先级信息,包括:
[0058] 确定所述每个探测数据的探测范围是否位于所述目标探测范围内;若所述探测数据的探测范围位于所述目标探测范围内,则所述探测数据对应的优先级为第一优先级;若
所述探测数据的探测范围位于所述一般探测范围内,则根据所述探测数据的探测范围与所
述目标探测范围的距离确定所述探测数据的优先级,即第二优先级;所述第一优先级高于
所述第二优先级。
[0059] 进一步的,根据所述每个探测数据对应的探测范围与预设目标探测范围的位置关系确定所述每个探测数据对应的优先级信息之后,所述方法包括:
[0060] 确定所述每个探测数据对应的障碍物信息;根据所述障碍物信息对所述探测数据的优先级信息进行进一步划分;
[0061] 所述每个探测数据对应的障碍物信息包括以下至少一项:障碍物的数量信息、障碍物的运动速度信息、障碍物与传感器的距离信息。
[0062] 其中,在确定探测数据的优先级的过程中,每一个探测数据都对应一个探测范围,获取每一个探测数据对应的探测范围与预设目标探测范围之间的距离,再结合每一个探测
数据的障碍物信息,最终可以确定每一个探测数据的优先级。
[0063] 其中,可以理解的是,在预设目标探测范围内的探测数据的优先级高于在预设目标探测范围外的探测数据的优先级。
[0064] 其中,可以理解的是,当探测数据位于目标探测范围内时优先级最高;当所述探测数据位于一般探测范围内时,则根据所述探测数据距离目标探测范围的距离确定所述探测
数据的优先级。,即与目标探测范围之间的距离越近的探测数据,其对应的优先级越高;与
预设目标探测范围之间的距离越远的探测数据,其对应的优先级越低。
[0065] 其中,可以理解的是,当所述两个或多个探测数据都位于目标探测范围内或与所述目标探测范围的距离相同时,根据所述探测数据中的障碍物信息进一步确定所述探测数
据的优先级;其中,障碍物信息包括以下至少一项:障碍物的数量信息、障碍物的运动速度
信息、障碍物与传感器的距离信息。
[0066] 其中,可以理解的是,当所述探测数据中包括的障碍物数量越多,则所述探测数据对应的优先级越高;当所述探测数据中包括的障碍物距离所述传感器越近,则所述探测数
据对应的优先级越高;当所述探测数据中障碍物运动速度越快,则所述探测数据对应的优
先级越高。
[0067] 其中,在一种可选的实施例中,根据障碍物信息进一步确定所述探测数据的优先级还包括,根据所述场景确定障碍物信息中每一项的权重,即障碍物数量信息的权重、障碍
物距离所述传感器距离信息的权重、障碍物运动速度信息的权重,根据障碍物信息中每一
个数据的权重及其相应的数值确定最终的优先级。
[0068] 其中,可以理解的是,所述障碍物运动速度信息可以多个障碍物的平均运动速度信息,也可以为障碍物中运动速度最大的障碍物的运动速度信息。
[0069] 可选地,传感器按照预设优先级顺序获取M个探测数据后,传感器中的任务调度系统实时监视计算区块中各个计算区块的负载情况,若计算区块中的多个计算区块无闲置计
算区块时,任务调度系统则将待处理的探测数据按照预设优先级顺序放入缓存堆栈中,直
至探测到多个计算区块中有闲置计算区块时,将M个探测数据中的K个探测数据依次调度至
多个计算区块中的闲置计算区块。若传感器按照预设优先级顺序依次获取M个探测数据后,
任务调度系统实时监视计算区块中的多个计算区块中有闲置计算区块,则将M个探测数据
中的K个探测数据依次调度至闲置计算区块中。其中,在实际应用中,若传感器算力充足,则
拆分后的探测数据可直接调度至计算区块,若算力不足,可将探测数据先存入缓存堆栈中,
再按照预设优先级顺序依次从缓存堆栈中取出探测数据并对其进行处理。
[0070] 其中,可以理解的是,在对传感器探测一帧点云数据划分成M个探测数据之前,还可以获取传感器所处的环境信息,根据环境信息确定传感器所处的场景;根据场景对划分
后的探测数据的数量M进行调整。
[0071] 其中,可以理解的是,根据场景对划分的探测数据的数量M进行调整,包括:确定当前场景的场景复杂度,判断场景复杂度是否大于预设阈值;当场景复杂度大于预设阈值时,
可将当前的探测数据的数量M调整为P个,调整后的探测数据对应的探测范围小于调整前的
探测范围;当场景复杂度小于预设阈值时,可将当前的探测数据的数量M调整为Q个,调整后
的探测数据对应的探测范围大于调整前的探测范围。
[0072] 其中,可以理解的是,所述场景复杂度越高,则对目标探测区域的实时性要求越高,则所述预设规则中对目标探测范围的筛分的数量也越多。
[0073] 其中,可以理解的是,在一种可选的实施例中,所述方法还包括:实时获取传感器算力情况,即所述可调度计算区块的空闲情况;若预设时间内传感器的算力情况达到预设
情况,则根据传感器的算力情况对所述一帧点云数据的划分数量进行调整。可以理解的是,
若预设时间内传感器空闲的计算模块达到第一预设值,则将一帧点云数据划分为N个探测
数据,其中N>M。若预设时间内传感器空闲的计算模块在预设范围内则不对一帧点云数据的
划分规则及数量进行调整。若预设时间内,缓存堆栈中的数据量达到预设数量,则对一帧数
据划分规则进行调整,即将一帧数据划分为W个探测数据,其中W
[0074] 其中,可以理解的是,当所述传感器预设时间内空闲的计算模块达到第一预设值,即传感器算力充足时,可以优先进行优先级高的区域的点云数据的进一步拆分,调整后的
目标探测区域的每个子探测区域的探测范围小于调整前的每个子探测区域的探测范围从
而进一步提升目标探测区域的探测实时性。
[0075] S303、根据所述K个探测数据的探测范围之间的边界关系对所述K个探测数据的感知计算结果进行实时融合,输出感知结果。
[0076] 具体地,传感器对K个探测数据进行处理后,将每一个处理完成的探测数据发送到区块融合模块,在所述区块融合模块中将当前处理完成后的探测数据与上一个已进行边界
融合处理的探测数据进行边界融合处理,输出融合处理结果。
[0077] 进一步地,传感器按照预设顺序对第一个探测数据进行处理完成后,将第一个探测数据发送至区块融合模块,同时计算区块对预设顺序中的第一个探测数据后的多个探测
数据进行处理,当第二个探测数据处理完成后,任务调度系统将其发送至区块融合模块,由
区块融合模块对第一个探测数据和第二个探测数据进行边界融合处理,融合处理完成后立
即输出处理结果。其中,对于边界融合处理所采用的方法其中一种方法可以是:将送入到区
块融合模块中相邻的探测数据的包围盒通过交并比(Intersection over Union,IoU)方法
进行融合处理。需要说明的是,本申请对边界融合处理的方法不做限定,还可以是其他合理
的边界融合方法。
[0078] 具体的,所述根据所述K个探测数据的探测范围之间的边界关系对所述K个探测数据的感知计算结果进行实时融合之前,所述方法还包括:确定所述探测数据边界处是否有
物体,若所述探测数据边界处没有物体,则按照预设规则输出检测结果。若所述探测数据边
界处存在物体,则将所述探测数据输入区块融合模块,在所述区块融合模块中根据所述探
测数据中物体位置及所述探测数据与其他探测数据的边界关系将两个探测数据进行边界
融合后输出识别结果。
[0079] 具体地,若所述探测数据边界处没有物体,则按照预设规则输出检测结果,包括:若所述探测数据边界处没有物体,则将所述探测数据一并输入区块融合模块待其他探测数
据融合完成后,整体输出识别结果。可选的,若所述探测数据边界处没有物体,也可以将此
探测数据的检测结果优先输出,得其他探测数据融合结果输出后,再将整帧数据的探测结
果进行整合。
[0080] 下面将结合具体实例对上述数据处理方法提高的感知计算的实时性作进一步说明。
[0081] 以64线360°机械旋转式激光雷达为例,该激光雷达的工作频率为10赫兹,即扫描本申请中的一帧数据需要100ms。对于该激光雷达的计算资源有A和B两种显卡可供选择,其
中,显卡A算力充足,例如NVIDIARTX 2080Ti显卡,显卡B为普通显卡,算力较弱。
[0082] 若采用现有技术中非优化处理方法的处理逻辑,显卡A处理一帧数据需要60ms,则感知延迟最大为扫描一帧数据的时间100ms加上处理一帧数据的60ms,即显卡A处理一帧数
据的感知延迟时间最大为160ms。而对于显卡B,B处理一帧数据需要120ms,则感知延迟最大
为扫描一帧数据的时间100ms加上处理一帧数据的时间120ms,即显卡B处理一帧数据的感
知延迟时间最大为220ms。
[0083] 若采用本申请提供的数据处理方法,为简化计算,假设边界融合模块对探测数据进行边界融合的时间固定为10ms,且计算资源对处理探测数据的时间与探测数据的数量成
正比。则对于显卡A,由于A算力充足,无需数据缓存,则A的感知计算的实时性取决于传感器
对一帧数据的拆分粒度,假设M等于5,即将一帧数据拆分成5个探测数据,则对于显卡A的感
知延迟时间包括扫描时间、感知计算时间与融合处理时间三者之和。其中,扫描一个探测数
据的时间100ms/5,即为20ms,感知计算时间为60ms/5,即为12ms,融合处理时间为10ms,则
对于A显卡,最终的感知延迟时间最大为12ms+12ms+10ms,等于42ms。而对于B显卡,由于B显
卡算力不足,因此在对传感器获取的一帧数据进行划分后,将划分后的探测数据立即输出
到缓存,再预设优先级顺序从缓存中依次获取对应的探测数据并对其进行处理,假设M等于
6,即将一帧数据拆分成6个探测数据,B显卡的感知计算延迟时间也包括扫描时间、感知计
算时间与融合处理时间。其中,扫描一个探测数据的时间为100ms/6,约为17ms,感知计算时
间为120ms/6,等于20ms,融合处理时间为10ms,因此,对于B显卡,最终的感知计算延迟时间
最大为17ms+20ms+10ms,等于47ms。显而易见地,相比于现有技术中采用的非优化感知计算
方法,显卡A的感知计算延迟从初始的160ms到采用本方案的42ms,显卡B的感知计算延迟从
初始的220ms到采用本方案的47ms,二者均在时间上明显缩短,即本方案的数据处理方法在
提高感知计算的实时性上具有明显效果。
[0084] 本申请提供了一种数据处理方法,通过传感器获取的一帧数据进行拆分得到多个探测数据,并对探测数据实时计算并进行边界融合处理,处理完成后即刻输出结果,无需等
待其他探测数据,本申请中的数据处理方法,通过实时获取探测数据并且实时对其进行计
算及融合处理,加速了感知计算的过程,从而提高了传感器对数据进行感知计算的实时性。
[0085] 请参考图7所示,图7是本申请实施例提供的一种扫描型传感器的数据处理方法的流程示意图,所述方法包括:
[0086] S701、根据传感器的类型确定传感器探测的一帧数据划分成M个探测数据的划分方式。
[0087] 具体地,对于扫描型传感器,例如激光雷达,包括MEMS固态激光雷达和旋转机械式激光雷达等,首先根据扫描型传感器的类型确定传感器探测的一帧数据划分成M个探测数
据的划分方式,例如对于MEMS固态激光雷达可以根据激光雷达探测一个周期对应的探测时
间进行划分,对于旋转机械式激光雷达可以根据激光雷达探测一帧数据对应的探测角度进
行划分。其中,对于MEMS固态激光雷达及旋转机械式激光雷达的详细描述请参考上述实施
例,对于不同类型的扫描型激光雷达对于探测数据的划分方式也请参考上述实施例,本实
施例不再赘述。
[0088] S702、按照预设顺序依次获取传感器的探测探测范围内的M个探测数据;
[0089] 具体地,传感器在确定探测数据的划分方式后,根据划分方式按照预设顺序依次获取传感器的探测范围内的M个探测数据。其中传感器在探测范围内探测的一帧点云数据
包括M个探测数据。
[0090] 其中,若所述传感器为扫描型传感器,则预设顺序为传感器的扫描顺序。若所述传感器为非扫描传感器,则预设顺序可以为预设的探测数据的获取顺序。
[0091] S703、在传感器的多个计算区块中无闲置计算区块的情况下,按照预设优先级顺序将M个探测数据存储进对应的缓存堆栈。
[0092] 具体地,传感器内部的任务调度系统会实时探测传感器的多个计算区块中是否有闲置计算区块,当某一个扫描型传感器当前无闲置计算区块时,则任务调度系统会按照探
测数据的优先级顺序将M个探测数据存储进对应的缓存堆栈。在实际应用中,无闲置计算区
块具体可表现为该传感器算力不足,有闲置计算区块具体可表现为传感器算力充足。
[0093] S704、当探测到多个计算区块中有K个闲置计算区块时,将M个探测数据中的K个探测数据从缓存堆栈中依次调度至多个计算区块中的闲置区块。
[0094] 具体地,当传感器的任务调度系统探测到多个计算区块中有闲置计算区块时,且当获取到闲置计算区块的数量为K时,则将M个探测数据中的K个探测数据从缓存堆栈中依
次调度至多个计算区块中的闲置计算区块。
[0095] S705、按照预设优先级顺序在闲置计算区块上依次处理K个探测数据。
[0096] 具体地,传感器按照预设优先级顺序在闲置计算区块上依次处理K个探测数据。
[0097] S706、对处理完成后的K个探测数据进行实时融合,输出融合结果。
[0098] 具体地,传感器的计算区块依次处理K个探测数据后,将每一个处理完成后的探测数据发送到区块融合模块,在区块融合模块上将当前处理完后的探测数据与上一个已进行
边界融合处理的探测数据进边界融合处理,输出数据处理结果。其中,对于边界融合方法请
参考上述实施例,本实施例不再赘述。
[0099] 本申请实施例中提供了一种扫描型传感器的数据处理方法,通过对扫描型传感器探测的一帧数据进行拆分,并对拆分后的探测数据进行实时计算,计算完成后进行实时融
合,融合处理完成后立即输出结果,提高了扫描型传感器对数据进行感知计算的实时性。
[0100] 请参考图8所示,图8是本申请实施例提供的一种非扫描型传感器的数据处理方法的流程示意图,所述方法包括:
[0101] S801、根据传感器的类型确定传感器探测的一帧数据划分成M个探测数据的划分方式。
[0102] 具体地,对于非扫描型传感器,例如摄像头,首先确定摄像头探测的一帧数据划分成多个探测数据的划分方式。对于摄像头划分探测数据的方式请参考上述实施例,本实施
例不再赘述。
[0103] S802、按照预设顺序依次获取传感器的探测范围内的M个探测数据。
[0104] 具体地,传感器在确定探测数据的划分方式后,根据划分方式按照预设顺序依次获取获取传感器的探测范围内的M个探测数据。
[0105] S803、在传感器的多个计算区块中有闲置计算区块的情况下,按照预设优先级顺序将M个探测数据中的K个探测数据依次调度至所包含的多个计算区块中。
[0106] 具体地,在传感器的多个计算区块中有闲置计算区块的情况下,传感器中的任务调度系统按照探测数据的预设优先级顺序将每个探测数据中的K个探测数据依次调度至传
感器所包含的多个计算区块中。
[0107] S804、按照预设优先级顺序在多个计算区块上同步处理K个探测数据。
[0108] 具体地,传感器按照预设优先级顺序在多个计算区块上同步处理M个探测数据中的K个探测数据。
[0109] S805、对处理完成后的K个探测数据进行实时融合,输出融合结果。
[0110] 具体地,传感器的计算区块依次处理K个探测数据后,将每一个处理完成后的探测数据发送到区块融合模块,在区块融合模块上将当前处理完后的探测数据与上一个已进行
边界融合处理的探测数据进边界融合处理,输出数据区处理结果。其中,对于边界融合方法
请参考上述实施例,本实施例不再赘述。
[0111] 本申请实施例中提供的对于非扫描型传感器的数据处理方法,通过对非扫描型传感器探测的一帧数据进行拆分,将其划分为多个探测数据,在多个计算区块中有闲置计算
区块的情况下,将拆分后的探测数据按照预设顺序调度至多个计算区块中,并控制在多个
计算区块上同步处理M个探测数据,对处理完成的探测数据进行实时融合,融合完成后立即
输出融合结果,从而提高了非扫描型传感器对于探测数据进行感知计算的实时性。
[0112] 请参考图9所示,基于数据处理方法,图9是本申请实施例提供的一种数据处理装置示意图,包括:
[0113] 第一获取模块901,用于实时获取闲置计算区块的数量K;K大于或等于1;
[0114] 计算模块902,用于按照探测数据的预设优先级顺序从缓存堆栈中调取前K个探测数据并输入所述闲置计算区块进行感知计算;
[0115] 融合模块903,用于根据所述K个探测数据的探测范围之间的边界关系对所述K个探测数据的感知计算结果进行实时融合,输出感知结果。
[0116] 在一些实施例中,所述装置还包括:
[0117] 划分模块,用于在计算模块902按照探测数据的预设优先级顺序从缓存堆栈中调取前K个探测数据并输入所述闲置计算区块进行感知计算之前,将一帧点云数据划分为M个
探测数据;其中,M≥K;
[0118] 存储模块,用于每获取一个探测数据则将所述探测数据的数据信息和所述探测数据对应的优先级信息存储到缓存堆栈中。
[0119] 在一些实施例中,所述划分模块具体用于:
[0120] 根据所述传感器的类型确定将一帧点云数据划分为M个探测数据的划分方式;所述划分方式包括以下至少一项:在所述传感器为扫描型传感器的情况下,按照所述扫描型
传感器探测一帧数据对应的探测周期划分、按照所述扫描型传感器探测一帧数据对应的探
测角度划分或者按照所述扫描型传感器探测一帧数据对应的探测时间和空间范围划分;在
所述传感器为非扫描型传感器的情况下,按照所述非扫描型传感器探测一帧数据对应的空
间区域划分。
[0121] 在一些实施例中,所述装置还包括:
[0122] 第二获取模块,用于在所述每获取一个探测数据则将所述探测数据的数据信息和所述探测数据对应的优先级信息存储到缓存堆栈中之前,获取每个探测数据的探测范围;
[0123] 确定模块,用于根据所述每个探测数据对应的探测范围与预设目标探测范围的位置关系确定所述每个探测数据对应的优先级信息。
[0124] 在一些实施例中,所述确定模块还用于:
[0125] 在根据所述每个探测数据对应的探测范围与目标探测范围的位置关系确定每个探测数据对应的优先级信息之前,确定所述传感器的探测范围内的一般探测范围和目标探
测范围;所述目标探测范围为用户预设的重点探测区域;
[0126] 所述确定模块还用于确定所述每个探测数据的探测范围是否位于所述目标探测范围内;若所述探测数据的探测范围位于所述目标探测范围内,则所述探测数据对应的优
先级为第一优先级;若所述探测数据的探测范围位于所述一般探测范围内,则根据所述探
测数据的探测范围与所述目标探测范围的距离确定所述探测数据的优先级,即第二优先
级;所述第一优先级高于所述第二优先级。
[0127] 在一些实施例中,所述确定模块还用于:
[0128] 根据所述每个探测数据对应的探测范围与预设目标探测范围的位置关系确定所述每个探测数据对应的优先级信息之后,确定所述每个探测数据对应的障碍物信息;根据
所述障碍物信息对所述探测数据的优先级信息进行进一步划分;
[0129] 所述每个探测数据对应的障碍物信息包括以下至少一项:障碍物的数量信息、障碍物的运动速度信息、障碍物与传感器的距离信息。
[0130] 在一些实施例中,所述融合模块903具体用于:
[0131] 按照预设优先级顺序将每一个完成感知计算的探测数据发送到区块融合模块,在所述区块融合模块中将当前处理完成后的探测数据与上一个已进行边界融合处理的探测
数据进行边界融合处理。
[0132] 请参考图10所示,本申请实施例中提供的另一种数据处理装置的结构示意图。该数据处理装置至少可以包括:至少一个处理器1001,例如CPU,至少一个网络接口1004,用户
接口1003,存储器1005,至少一个通信总线1002。其中,通信总线1002用于实现这些组件之
间的连接通信。用户接口1003可以包括但不限于是摄像头、显示器、触摸屏、键盘、鼠标、摇
杆等等。网络接口1004可选的可以包括标准的有线接口、无线接口(如WIFI接口),通过网络
接口1004可以与服务器建立通信连接。存储器1002可以是高速RAM存储器,也可以是非不稳
定的存储器(non‑volatile memory),例如至少一个磁盘存储器。如图10所示,作为一种计
算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及程序
指令。
[0133] 需要说明的是,网络接口1004可以连接获取器、发射器或其他通信模块,其他通信模块可以包括但不限于WiFi模块、运营商网络通信模块等,可以理解,本申请实施例中数据
处理装置也可以包括获取器、发射器和其他通信模块等。
[0134] 处理器1001可以用于调用存储器1005中存储的程序指令,可以执行以下方法:
[0135] 实时获取闲置计算区块的数量K;K大于或等于1;
[0136] 按照探测数据的预设优先级顺序从缓存堆栈中调取前K个探测数据并输入所述闲置计算区块进行感知计算;
[0137] 根据所述K个探测数据的探测范围之间的边界关系对所述K个探测数据的感知计算结果进行实时融合,输出感知结果。
[0138] 可能地,所述处理器1001按照探测数据的预设优先级顺序从缓存堆栈中调取前K个探测数据并输入所述闲置计算区块进行感知计算之前,还用于执行:
[0139] 将一帧点云数据划分为M个探测数据;其中,M≥K;
[0140] 每获取一个探测数据则将所述探测数据的数据信息和所述探测数据对应的优先级信息存储到缓存堆栈中。
[0141] 可能地,所述处理器1001将一帧点云数据划分为M个探测数据,具体执行:
[0142] 根据所述传感器的类型确定将一帧点云数据划分为M个探测数据的划分方式;所述划分方式包括以下至少一项:在所述传感器为扫描型传感器的情况下,按照所述扫描型
传感器探测一帧点云数据对应的探测周期划分、按照所述扫描型传感器探测一帧点云数据
对应的探测范围划分或者按照所述扫描型传感器探测一帧点云数据对应的探测时间和空
间区域划分;在所述传感器为非扫描型传感器的情况下,按照所述非扫描型传感器探测一
帧点云数据对应的空间区域划分。
[0143] 可能地,所述处理器1001每获取一个探测数据则将所述探测数据的数据信息和所述探测数据对应的优先级信息存储到缓存堆栈中之前,还用于执行:
[0144] 获取每个探测数据的探测范围;
[0145] 根据所述每个探测数据对应的探测范围与预设目标探测范围的位置关系及预设规则确定所述每个探测数据对应的优先级信息。
[0146] 可能地,所述处理器1001根据所述每个探测数据对应的探测范围与目标探测范围的位置关系确定每个探测数据对应的优先级信息之前,还用于执行:
[0147] 确定所述传感器的探测范围内的一般探测范围和目标探测范围;所述目标探测范围为用户预设的重点探测区域;
[0148] 所述根据所述每个探测数据的探测范围与目标探测范围的位置关系确定所述每个探测数据对应的优先级信息,包括:
[0149] 确定所述每个探测数据的探测范围是否位于所述目标探测范围内;若所述探测数据的探测范围位于所述目标探测范围内,则所述探测数据对应的优先级为第一优先级;若
所述探测数据的探测范围位于所述一般探测范围内,则根据所述探测数据的探测范围与所
述目标探测范围的距离确定所述探测数据的优先级,即第二优先级;所述第一优先级高于
所述第二优先级。
[0150] 可能地,所述处理器1001根据所述每个探测数据对应的探测范围与预设目标探测范围的位置关系确定所述每个探测数据对应的优先级信息之后,所述方法包括:
[0151] 确定所述每个探测数据对应的障碍物信息;根据所述障碍物信息对所述探测数据的优先级信息进行进一步划分;
[0152] 所述每个探测数据对应的障碍物信息包括以下至少一项:障碍物的数量信息、障碍物的运动速度信息、障碍物与传感器的距离信息。
[0153] 可能地,所述处理器1001根据所述K个探测数据的探测范围之间的边界关系对所述K个探测数据的感知计算结果进行实时融合,输出感知结果,具体执行:
[0154] 按照预设优先级顺序将每一个完成感知计算的探测数据发送到区块融合模块,在所述区块融合模块中将当前处理完成后的探测数据与上一个已进行边界融合处理的探测
数据进行边界融合处理。
[0155] 本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机或处理器上运行时,使得计算机或处理器执行上述任一个方法中的
一个或多个步骤。上述装置的各组成模块如果以软件功能单元的形式实现并作为独立的产
品销售或使用时,可以存储在所述计算机可读取存储介质中。
[0156] 在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序
产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或
部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计
算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质
中,或者通过所述计算机可读存储介质进行传输。所述计算机指令可以从一个网站站点、计
算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(Digital Subscriber 
Line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数
据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是
包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是
磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,数字通用光盘(Digital Video Disc,
DVD)、或者半导体介质(例如,固态硬盘(solid state disk,SSD))等。
[0157] 本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,该程序可存储于计算机可读取存储介质中,该程
序在执行时,可包括如上述各方法的实施例的流程。而前述的存储介质包括:只读存储器
(Read‑Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘
等各种可存储程序代码的介质。在不冲突的情况下,本实施例和实施方案中的技术特征可
以任意组合。
[0158] 以上所述的实施例仅仅是本申请的优选实施例方式进行描述,并非对本申请的范围进行限定,在不脱离本申请的设计精神的前提下,本领域普通技术人员对本申请的技术
方案作出的各种变形及改进,均应落入本申请的权利要求书确定的保护范围内。