CN115439302A - 一种点云数据处理方法、装置、设备及存储介质 - Google Patents
一种点云数据处理方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN115439302A CN115439302A CN202111448731.9A CN202111448731A CN115439302A CN 115439302 A CN115439302 A CN 115439302A CN 202111448731 A CN202111448731 A CN 202111448731A CN 115439302 A CN115439302 A CN 115439302A
- Authority
- CN
- China
- Prior art keywords
- point cloud
- cloud data
- gpu
- video memory
- module
- 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
- 238000003860 storage Methods 0.000 title claims abstract description 15
- 238000003672 processing method Methods 0.000 title claims abstract description 10
- 238000012545 processing Methods 0.000 claims abstract description 128
- 238000000034 method Methods 0.000 claims abstract description 34
- 238000004590 computer program Methods 0.000 claims description 11
- 238000009826 distribution Methods 0.000 claims description 11
- 238000013500 data storage Methods 0.000 claims description 5
- 230000008569 process Effects 0.000 abstract description 12
- 238000010586 diagram Methods 0.000 description 13
- 238000004891 communication Methods 0.000 description 11
- 238000005516 engineering process Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000006872 improvement Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- KRTSDMXIXPKRQR-AATRIKPKSA-N monocrotophos Chemical compound CNC(=O)\C=C(/C)OP(=O)(OC)OC KRTSDMXIXPKRQR-AATRIKPKSA-N 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/20—Processor architectures; Processor configuration, e.g. pipelining
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/60—Memory management
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Traffic Control Systems (AREA)
Abstract
本申请实施例提供一种点云数据处理方法、装置、设备及存储介质。在本申请实施例中,获取到激光雷达采集到的点云数据后,直接将点云数据存储在GPU的显存中,在基于GPU对点云数据进行处理时,GPU可直接从显存中读取点云数据并进行点云数据处理。进而,避免了GPU对点云数据处理之前需将点云数据从CPU的内存拷贝到显存所需的耗时,简化了点云数据的处理流程,提高了点云数据的处理效率。
Description
技术领域
本发明涉及自动驾驶技术领域,尤其涉及一种点云数据处理方法、装置、设备及存储介质。
背景技术
在自动驾驶领域,随着激光雷达的成本的降低和性能的提升,激光雷达产生的点云数据的规模日益增大。在一些方案中,将点云的部分数据处理过程,放在GPU(GraphicsProcessing Unit,图形处理器)上做加速。现有技术一般将点云数据存放在CPU(centralprocessing unit,中央处理器)内存中,并在GPU对点云数据进行加速处理的过程中,从CPU内存中读取点云数据并进行处理。但这种点云数据的处理方式效率低,耗时较高。因此,有待提出一种解决方案。
发明内容
本申请实施例提供一种点云数据处理方法、装置、设备及存储介质,用以提升点云数据的处理效率。
本申请实施例提供一种点云数据处理方法,包括:获取激光雷达采集到的点云数据;将所述点云数据保存在GPU的显存中;利用所述GPU从所述显存中读取所述点云数据,并对读取到的所述点云数据进行处理,得到点云数据处理结果。
进一步可选地,得到点云数据处理结果之后,还包括:将所述点云数据处理结果保存在CPU的内存中,以供所述CPU使用。
进一步可选地,得到点云数据处理结果之后,还包括:根据所述点云数据处理结果,对所述GPU的显存中的点云数据进行更新,以供所述GPU中的部分应用模块使用更新后的点云数据。
进一步可选地,将所述点云数据保存在GPU的显存中之后,还包括:确定所述GPU中订阅所述点云数据的至少一个应用模块;将所述点云数据的地址分发至所述至少一个应用模块,以使所述至少一个应用模块根据所述点云数据的地址访问所述点云数据。
进一步可选地,所述至少一个应用模块,通过数据分发服务订阅所述显存中的点云数据的地址。
进一步可选地,利用GPU从所述显存中读取所述点云数据,并对读取到的所述点云数据进行处理,得到点云数据处理结果,包括:通过GPU中的运动补偿模块接收点云数据发布消息;通过所述运动补偿模块从所述显存中读取所述点云数据;通过所述运动补偿模块,获取导航设备获取到的定位数据;通过所述运动补偿模块,根据所述定位数据对读取到的所述点云数据进行运动补偿,得到补偿后的点云数据。
本申请实施例提供一种点云数据处理装置,包括:数据获取模块,用于获取激光雷达采集到的点云数据;数据保存模块,用于将所述点云数据保存在GPU的显存中;数据处理模块,用于利用所述GPU从所述显存中读取所述点云数据,并对读取到的所述点云数据进行处理,得到点云数据处理结果。
进一步可选地,所述装置还包括:数据分发模块;所述数据分发模块用于:确定所述GPU中订阅所述点云数据的至少一个应用模块;将所述点云数据的地址分发至所述至少一个应用模块,以使所述至少一个应用模块根据所述点云数据的地址访问所述点云数据。
本申请实施例还提供一种电子设备,包括:存储器、中央处理器以及图形处理器;其中,所述存储器用于:存储一条或多条计算机指令;所述中央处理器用于执行所述一条或多条计算机指令,以用于:通过所述图形处理器执行本申请实施例提供的方法中的步骤。
本申请实施例还提供一种存储有计算机程序的计算机可读存储介质,当计算机程序被处理器执行时,致使处理器实现本申请实施例提供的方法中的步骤。
本实施例中,获取到激光雷达采集到的点云数据后,直接将点云数据存储在GPU的显存中,在基于GPU对点云数据进行处理时,GPU可直接从显存中读取点云数据并进行点云数据处理。进而,避免了GPU对点云数据处理之前需将点云数据从CPU的内存拷贝到显存所需的耗时,简化了点云数据的处理流程,提高了点云数据的处理效率。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请一示例性实施例提供的一种点云数据处理方法的流程示意图;
图2为本申请一示例性实施例提供的点云数据处理的流程框图;
图3为本申请一示例性实施例提供的自动驾驶数据处理装置的结构示意图;
图4为本申请一示例性实施例提供的电子设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
针对无法高效处理点云数据的技术问题,在本申请一些实施例中,提供了一种解决方案,以下将结合附图,详细说明本申请各实施例提供的技术方案。
图1为本申请一示例性实施例提供的一种点云数据处理方法的流程示意图,如图1所示,该方法包括:
步骤11、获取激光雷达采集到的点云数据。
步骤12、将所述点云数据保存在GPU的显存中。
步骤13、利用所述GPU从所述显存中读取所述点云数据,并对读取到的所述点云数据进行处理,得到点云数据处理结果。
本实施例的执行主体可以为用于执行点云数据处理操作的电子设备,该电子设备上安装有CPU以及GPU,并可利用CUDA(Compute Unified Device Architecture,一种基于GPU的并行计算架构)提供的基于GPU的并行计算框架对点云数据进行预处理。
在本实施例中,激光雷达采集到的点云数据,可以是道路元素(例如车道、红绿灯、测速设施)的点云数据、道路上的车辆的点云数据、街景的点云数据等。其中,点云数据可用于进行物体识别、物体跟踪、建图定位等计算。在自动驾驶领域中,采集到的点云数据的规模往往较大。例如,以禾塞(Hesai)激光雷达Pandar 128双回波模式为例,每帧可以产生超过90万的点云,而这些原始点云的数据大小可以达到40MB。对大规模的点云数据进行处理,将耗费较多的时长。
在本实施例中,采用GPU对点云数据的部分数据处理过程进行加速,以降低点云数据的处理耗时。激光雷达采集到点云数据后,点云数据可经由激光雷达的驱动进行解析,解析得到的点云数据可直接存放入GPU的显存(Uniform Memory,统一内存)中。其中,激光雷达的驱动可由激光雷达的SDK(Software Development Kit,软件开发工具包)提供。
在基于GPU对点云数据进行加速处理时,可利用GPU从显存中读取点云数据,并对读取到的点云数据进行处理,得到点云数据处理结果。其中,GPU在物理结构上被划分为内核(Kernel)、网格(Grid)、线程块(Block)以及线程(Thread)。其中,内核可包括多个网格,网格可包括多个线程块,线程块可包括多个线程。基于GPU支持多线程并行的特征,可利用CUDA并行执行点云数据的处理任务,从而提升处理效率。
其中,对点云数据进行处理,可包括但不限于:对点云数据进行运动补偿、在点云数据中添加高精度时间戳、对稀疏点云进行补充、对点云数据进行去噪、对点云数据进行配准等等,本实施例不做限制。
在本实施例中,获取到激光雷达采集到的点云数据后,直接将点云数据存储在GPU的显存中,在基于GPU对点云数据进行处理时,GPU可直接从显存中读取点云数据并进行点云数据处理。进而,避免了GPU对点云数据处理之前需将点云数据从CPU的内存拷贝到显存所需的耗时,简化了点云数据的处理流程,提高了点云数据的处理效率。
在一些可选的实施例中,用于点云数据处理的电子设备还可用于根据GPU处理后的点云数据执行其他操作,该其他操作可由CPU执行。例如,基于点云数据的三维建模、基于点云数据的地图制作、基于点云数据的建筑物测绘等等,此处不赘述。
为便于CPU使用处理完成的点云数据,在本实施例中,通过GPU得到点云数据处理结果之后,可将点云数据处理结果直接保存在CPU的内存中。从而,CPU在利用点云数据处理结果执行其他操作时,可直接从CPU的内存中读取所需的点云数据处理结果。其中,该点云数据处理结果,可包括GPU输出的最终处理结果,不包括GPU内部的应用模块输出的中间处理结果。
在这种实施方式中,将基于GPU加速处理得到的点云数据处理结果直接存放在CPU的内存中,可避免在点云数据处理之后将点云数据处理结果保存在GPU的显存中,再从GPU的显存中拷贝至CPU的内存的操作,进一步降低了处理耗时,提升了点云数据的处理效率。
在一些可选的实施例中,通过GPU得到点云数据处理结果之后,可根据该点云数据处理结果,对GPU的显存中的点云数据进行更新,以供GPU中的部分应用模块使用更新后的点云数据。可选地,根据点云数据处理结果对GPU显存中的点云数据进行更新时,可采用处理后的点云数据更新处理前的点云数据,即,采用点云数据处理结果替换原始的点云数据。可选地,根据点云数据处理结果对GPU显存中的点云数据进行更新时,可将处理后的点云数据作为GPU显存中的新数据,并将新数据与原始数据对应保存。在这种实施方式中,GPU中的部分应用模块可使用处理后的点云数据进行其他处理操作。
例如,GPU包含点运动补偿模块以及点云数据分割模块。运动补偿模块对GPU显存中的原始电源数据进行运动补偿处理后,可根据运动补偿处理后的点云数据对GPU显存中的点云数据进行更新。点云数据分割模块可对GPU显存中的更新后的点云数据进行分割,以从点云数据中提取不同的物体。
在一些可选的实施例中,通过GPU得到点云数据处理结果之后,可将点云数据处理结果直接保存在CPU的内存中,以供CPU使用;同时,可根据该点云数据处理结果,对GPU的显存中的点云数据进行更新,以供GPU中的部分应用模块使用更新后的点云数据,不再赘述。
在一些可选的实施例中,存放在GPU的显存中的点云数据,可通过数据分发服务(Data Distribution Service,DDS)架构提供的订阅和发布的方式,提供给GPU中的不同数据处理模块使用。GPU中的不同数据处理模块,可通过DDS订阅点云数据;显存中的点云数据更新后,DDS可向订阅点云数据的数据处理模块发布点云数据的更新消息。
其中,DDS采用发布/订阅体系架构,可对数据进行实时、高效、灵活地分发,从而满足各种分布式实时通信应用需求。DDS通过UDP(User Datagram Protocol,用户数据包协议)协议订阅多种数据。
可选地,可通过订阅与发布的形式,将点云数据在显存中的地址在GPU的各个数据处理模块之间进行转发。其中,点云数据在显存中的地址,可以是点云数据在显存中的指针地址。即,将点云数据保存在GPU的显存中之后,可确定GPU中订阅点云数据的至少一个应用模块,并将点云数据的地址分发至该至少一个应用模块。从而,该至少一个应用模块可根据点云数据的地址访问点云数据。
在上述实施例中,可选地,GPU中的至少一个应用模块,可通过DDS订阅显存中的点云数据的地址。可选地,针对任一应用模块,当该应用模块对点云数据进行处理得到的结果为中间结果,且该结果可被其他模块使用时,可将该中间结果保存在显存中,并将该中间结果的地址通过DDS分发给需要利用该中间结果的其他模块。
在本申请的上述以及下述各实施例中,可选地,GPU中的至少一个应用模块,可包括:运动补偿模块、时间戳数据处理模块、稀疏点云补充模块、点云去噪模块以及点云配准模块中的至少一种。
以下将结合附图2,以运动补偿模块为例,对前述步骤13记载的利用GPU从显存中读取点云数据,并对读取到的点云数据进行处理的操作进行进一步示例性说明。
当激光雷达配置在车辆(例如测绘工程车或自动驾驶车辆)上时,车辆处于运动状态,道路上被采集点云数据的汽车等物体也处于运动状态。在这种情况下,直接利用采集到的激光点云数据建立的车辆行驶环境的三维空间模型存在一定形变,将无法真实反映车辆的行驶环境。因此,在采集到点云数据后,可进入点云数据的预处理环节。
如图2所示,车辆上的导航设备可实时采集运动数据,并通过CAN(ControllerArea Network,控制器局域网络)按照设定频率(例如100HZ)将采集到的运动数据发送至用于处理点云数据的电子设备。
运动补偿模块,可通过DDS获取导航设备采集到的定位数据,该定位数据可包括:航迹推演数据(Odometry)、惯性传感器数据(Inertial measurement unit,IMU)、惯性导航系统(Inertial Navigation System,INS)数据等等。上述多种动态的数据可生成运动矩阵,并提供给GPU的运动补偿模块进行使用。运动补偿模块,可基于运动矩阵对点云数据中的每个激光点进行补偿。
如图2所示,运动补偿模块作为DDS订阅者,可通过UDP获取运动数据,从GPU的显存中读取点云数据,并根据运动数据对点云数据进行运动补偿以更新点云数据。
其中,GPU中的运动补偿模块与其他模块之间,可基于DDS实现点云数据计算结果的流转。例如,如图2所示,运动补偿模块作为DDS发布者可通过UDP向其他模块发布点云数据的更新消息,该其他模块接收到该更新消息后,可从GPU的显存中获取更新后的点云数据并利用更新后的点云数据进行数据处理,不再赘述。
基于这种实施方式,GPU进行点云数据处理所需的点云数据存放在GPU的显存中,从而GPU中的应用模块可快速从显存中获取数据,有效提升了点云数据的处理效率。同时,GPU中的每个应用模块通过DDS订阅数据,并进行模块内部的处理、预测、推理等操作后可给出本模块的处理结果(即中间结果),本模块的处理结果可存放在显存中,并通过DDS将处理结果发布给其他模块使用。这种存放并发布中间计算结果的方式,可避免在CPU内存与GPU显存之间进行数据拷贝,进一步加速了点云数据的整体处理流程。
图3为本申请一示例性实施例提供的一种自动驾驶数据处理装置的结构示意图,如图3所示,该自动驾驶数据处理装置包括:
数据获取模块301,用于获取激光雷达采集到的点云数据。
数据保存模块302,用于将所述点云数据保存在GPU的显存中。
数据处理模块303,用于利用所述GPU从所述显存中读取所述点云数据,并对读取到的所述点云数据进行处理,得到点云数据处理结果。
进一步可选地,数据保存模块302还用于,将所述点云数据处理结果保存在CPU的内存中,以供所述CPU使用。
进一步可选地,数据保存模块302还用于,根据所述点云数据处理结果,对所述GPU的显存中的点云数据进行更新,以供所述GPU中的部分应用模块使用更新后的点云数据。
进一步可选地,所述装置还包括:数据分发模块304。数据分发模块304用于:确定所述GPU中订阅所述点云数据的至少一个应用模块;将所述点云数据的地址分发至所述至少一个应用模块,以使所述至少一个应用模块根据所述点云数据的地址访问所述点云数据。
进一步可选地,所述至少一个应用模块,通过数据分发服务订阅所述显存中的点云数据的地址。
进一步可选地,数据处理模块303在利用GPU从所述显存中读取所述点云数据,并对读取到的所述点云数据进行处理,得到点云数据处理结果时,具体用于:通过GPU中的运动补偿模块接收点云数据发布消息;通过所述运动补偿模块从所述显存中读取所述点云数据;通过所述运动补偿模块,获取导航设备获取到的定位数据;通过所述运动补偿模块,根据所述定位数据对读取到的所述点云数据进行运动补偿,得到补偿后的点云数据。
本实施例中,获取到激光雷达采集到的点云数据后,直接将点云数据存储在GPU的显存中,在基于GPU对点云数据进行处理时,GPU可直接从显存中读取点云数据并进行点云数据处理。进而,避免了GPU对点云数据处理之前需将点云数据从CPU的内存拷贝到显存所需的耗时,简化了点云数据的处理流程,提高了点云数据的处理效率
图4为本申请一示例性实施例提供的电子设备的结构示意图,如图4所示,该电子设备可包括:存储器401、CPU402、GPU403、通信组件404以及电源组件405。图4中仅示意性给出部分组件,并不意味着电子设备只包括图4所示组件。
存储器401可被配置为存储其它各种数据以支持在电子设备上的操作。这些数据的示例包括用于在电子设备上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。
存储器401可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
在本实施例中,存储器401用于存储一条或多条计算机指令。
CPU402,耦合至存储器401,用于执行存储器401中的一条或多条计算机指令,以用于:通过通信组件404获取激光雷达采集到的点云数据;将所述点云数据保存在GPU404的显存中;利用所述GPU404从所述显存中读取所述点云数据,并对读取到的所述点云数据进行处理,得到点云数据处理结果。
进一步可选地,CPU402在得到点云数据处理结果之后,还用于:将所述点云数据处理结果保存在CPU403的内存中,以供所述CPU使用。
进一步可选地,CPU402在得到点云数据处理结果之后,还用于:根据所述点云数据处理结果,对所述GPU的显存中的点云数据进行更新,以供所述GPU中的部分应用模块使用更新后的点云数据。
进一步可选地,CPU402将所述点云数据保存在GPU404的显存中之后,用于:确定所述GPU404中订阅所述点云数据的至少一个应用模块;将所述点云数据的地址分发至所述至少一个应用模块,以使所述至少一个应用模块根据所述点云数据的地址访问所述点云数据。
进一步可选地,所述至少一个应用模块,通过数据分发服务订阅所述显存中的点云数据的地址。
进一步可选地,CPU402在利用GPU404从所述显存中读取所述点云数据,并对读取到的所述点云数据进行处理,得到点云数据处理结果时,具体用于:通过GPU404中的运动补偿模块接收点云数据发布消息;通过所述运动补偿模块从所述显存中读取所述点云数据;通过所述运动补偿模块,获取导航设备获取到的定位数据;通过所述运动补偿模块,根据所述定位数据对读取到的所述点云数据进行运动补偿,得到补偿后的点云数据。
其中,通信组件404被配置为便于通信组件所在设备和其他设备之间有线或无线方式的通信。通信组件所在设备可以接入基于通信标准的无线网络,如WiFi,2G、3G、4G或5G,或它们的组合。在一个示例性实施例中,通信组件经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,通信组件可基于近场通信(NFC)技术、射频识别(RFID)技术、红外数据协会(IrDA)技术、超宽带(UWB)技术、蓝牙(BT)技术和其他技术来实现。
其中,电源组件405,为电源组件所在设备的各种组件提供电力。电源组件可以包括电源管理系统,一个或多个电源,及其他与为电源组件所在设备生成、管理和分配电力相关联的组件。
本实施例中,电子设备获取到激光雷达采集到的点云数据后,直接将点云数据存储在GPU的显存中,在基于GPU对点云数据进行处理时,GPU可直接从显存中读取点云数据并进行点云数据处理。进而,避免了GPU对点云数据处理之前需将点云数据从CPU的内存拷贝到显存所需的耗时,简化了点云数据的处理流程,提高了点云数据的处理效率。
相应地,本申请实施例还提供一种存储有计算机程序的计算机可读存储介质,计算机程序被执行时能够实现上述方法实施例中可由电子设备执行的方法实施例中各步骤。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (10)
1.一种点云数据处理方法,其特征在于,包括:
获取激光雷达采集到的点云数据;
将所述点云数据保存在GPU的显存中;
利用所述GPU从所述显存中读取所述点云数据,并对读取到的所述点云数据进行处理,得到点云数据处理结果。
2.根据权利要求1所述的方法,其特征在于,得到点云数据处理结果之后,还包括:
将所述点云数据处理结果保存在CPU的内存中,以供所述CPU使用。
3.根据权利要求1所述的方法,其特征在于,得到点云数据处理结果之后,还包括:
根据所述点云数据处理结果,对所述GPU的显存中的点云数据进行更新,以供所述GPU中的部分应用模块使用更新后的点云数据。
4.根据权利要求1所述的方法,其特征在于,将所述点云数据保存在GPU的显存中之后,还包括:
确定所述GPU中订阅所述点云数据的至少一个应用模块;
将所述点云数据的地址分发至所述至少一个应用模块,以使所述至少一个应用模块根据所述点云数据的地址访问所述点云数据。
5.根据权利要求4所述的方法,其特征在于,所述至少一个应用模块,通过数据分发服务订阅所述显存中的点云数据的地址。
6.根据权利要求1-5任一项所述的方法,其特征在于,利用GPU从所述显存中读取所述点云数据,并对读取到的所述点云数据进行处理,得到点云数据处理结果,包括:
通过GPU中的运动补偿模块接收点云数据发布消息;
通过所述运动补偿模块从所述显存中读取所述点云数据;
通过所述运动补偿模块,获取导航设备获取到的定位数据;
通过所述运动补偿模块,根据所述定位数据对读取到的所述点云数据进行运动补偿,得到补偿后的点云数据。
7.一种点云数据处理装置,其特征在于,包括:
数据获取模块,用于获取激光雷达采集到的点云数据;
数据保存模块,用于将所述点云数据保存在GPU的显存中;
数据处理模块,用于利用所述GPU从所述显存中读取所述点云数据,并对读取到的所述点云数据进行处理,得到点云数据处理结果。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:数据分发模块;所述数据分发模块用于:确定所述GPU中订阅所述点云数据的至少一个应用模块;将所述点云数据的地址分发至所述至少一个应用模块,以使所述至少一个应用模块根据所述点云数据的地址访问所述点云数据。
9.一种电子设备,其特征在于,包括:存储器、中央处理器以及图形处理器;
其中,所述存储器用于:存储一条或多条计算机指令;
所述中央处理器用于执行所述一条或多条计算机指令,以用于:通过所述图形处理器执行权利要求1-6任一项所述的方法中的步骤。
10.一种存储有计算机程序的计算机可读存储介质,其特征在于,当计算机程序被处理器执行时,致使处理器实现权利要求1-6任一项所述方法中的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111448731.9A CN115439302A (zh) | 2021-11-30 | 2021-11-30 | 一种点云数据处理方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111448731.9A CN115439302A (zh) | 2021-11-30 | 2021-11-30 | 一种点云数据处理方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115439302A true CN115439302A (zh) | 2022-12-06 |
Family
ID=84271889
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111448731.9A Pending CN115439302A (zh) | 2021-11-30 | 2021-11-30 | 一种点云数据处理方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115439302A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115984087A (zh) * | 2022-12-29 | 2023-04-18 | 众芯汉创(北京)科技有限公司 | 一种无人机的海量点云数据快速处理分析方法和系统 |
CN116485626A (zh) * | 2023-04-10 | 2023-07-25 | 北京辉羲智能科技有限公司 | 一种对传感器数据转储的自动驾驶SoC芯片 |
-
2021
- 2021-11-30 CN CN202111448731.9A patent/CN115439302A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115984087A (zh) * | 2022-12-29 | 2023-04-18 | 众芯汉创(北京)科技有限公司 | 一种无人机的海量点云数据快速处理分析方法和系统 |
CN115984087B (zh) * | 2022-12-29 | 2023-10-24 | 众芯汉创(北京)科技有限公司 | 一种无人机的海量点云数据快速处理分析方法和系统 |
CN116485626A (zh) * | 2023-04-10 | 2023-07-25 | 北京辉羲智能科技有限公司 | 一种对传感器数据转储的自动驾驶SoC芯片 |
CN116485626B (zh) * | 2023-04-10 | 2024-03-12 | 北京辉羲智能科技有限公司 | 一种对传感器数据转储的自动驾驶SoC芯片 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115439302A (zh) | 一种点云数据处理方法、装置、设备及存储介质 | |
WO2021050581A1 (en) | A machine-learning-based architecture search method for a neural network | |
US11494370B2 (en) | Hardware-controlled updating of a physical operating parameter for in-field fault detection | |
WO2021097728A1 (en) | Identification of multi-scale features using neural network | |
US20210133583A1 (en) | Distributed weight update for backpropagation of a neural network | |
KR20220077150A (ko) | 딥 러닝을 위한 마스터 변환 아키텍처 | |
CN118503697A (zh) | 基于比较模型参数的准确度训练机器学习模型的处理器和系统 | |
US20220179661A1 (en) | Electronic device and method of controlling same | |
US20200210234A1 (en) | Distributed system task management using a simulated clock | |
US11480964B2 (en) | Distributed system execution using a serial timeline | |
US20200363215A1 (en) | Map updates based on data captured by an autonomous vehicle | |
US20220329847A1 (en) | Superpixel generation and use | |
GB2622702A (en) | Processor and system to manipulate floating point and integer values in computations | |
US12099848B2 (en) | Automatic compute kernel generation | |
EP4198727A1 (en) | Apparatus, articles of manufacture, and methods to partition neural networks for execution at distributed edge nodes | |
CN113112208A (zh) | 一种基于三维可视化模型的电力物资仓储管理方法 | |
KR20210021261A (ko) | 가속기에서 이종 컴포넌트들을 구성하기 위한 방법들 및 장치 | |
CN110945557A (zh) | 用于确定到达的预估时间的系统和方法 | |
CN113095781A (zh) | 一种基于边缘计算的温控设备管控方法、设备及介质 | |
CN116467061B (zh) | 一种任务执行的方法、装置、存储介质及电子设备 | |
US20220075842A1 (en) | Processor and system for automatic fusion of matrix multiplication and reduction operations | |
CN114554279B (zh) | 基于远程分析的触发器响应剪辑提取 | |
US20220019473A1 (en) | Methods and apparatuses for data processing resource allocation | |
CN114021332A (zh) | 一种调试方法、装置、设备以及存储介质 | |
CN110832513B (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 |