CN117078825B - 一种点云数据线上渲染修改方法、系统、设备及介质 - Google Patents
一种点云数据线上渲染修改方法、系统、设备及介质 Download PDFInfo
- Publication number
- CN117078825B CN117078825B CN202311130594.3A CN202311130594A CN117078825B CN 117078825 B CN117078825 B CN 117078825B CN 202311130594 A CN202311130594 A CN 202311130594A CN 117078825 B CN117078825 B CN 117078825B
- Authority
- CN
- China
- Prior art keywords
- point cloud
- data
- request information
- rendering
- cloud data
- 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
- 238000009877 rendering Methods 0.000 title claims abstract description 47
- 238000002715 modification method Methods 0.000 title claims description 12
- 238000012986 modification Methods 0.000 claims abstract description 30
- 230000004048 modification Effects 0.000 claims abstract description 30
- 238000012545 processing Methods 0.000 claims abstract description 21
- 238000000034 method Methods 0.000 claims abstract description 17
- 230000000903 blocking effect Effects 0.000 claims abstract description 7
- 238000013500 data storage Methods 0.000 claims description 5
- 239000000872 buffer Substances 0.000 claims description 4
- 230000003139 buffering effect Effects 0.000 claims description 2
- 230000010485 coping Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Graphics (AREA)
- General Engineering & Computer Science (AREA)
- Image Generation (AREA)
Abstract
本发明涉及点云在线处理技术领域,具体为一种点云数据线上渲染修改方法、系统、设备及介质,所述方法包括:对上传的点云原始数据的数据结构进行转换,并通过八叉树层状结构进行数据存储;根据八叉树层状结构得到索引信息;所述服务器端接收请求信息所组成的节点地址集合,确定待修改的点云数据的存储位置;对节点地址集合中的请求信息进行批量处理,根据索引信息在内存中加载对应位置的点云原始数据进行渲染修改;将修改后的点云数据存储于缓存队列进行回传,直至节点地址集合中的全部请求信息处理结束。应对大量点云编辑操作时的服务器卡顿问题,满足点云数据在线渲染的场景,提高了在线编辑点云数据的速度。
Description
技术领域
本发明涉及点云在线处理技术领域,具体为一种点云数据线上渲染修改方法、系统、设备及介质。
背景技术
随着近些年激光雷达技术的飞速发展,以及地形测绘、林业勘察、电力巡检、数字城市和无人驾驶等行业需求的不断增加,激光雷达采集环境场景产生的大规模点云数据的处理和展示仍然存在许多难题。
点云数据是由三维激光雷达对现实实体进行扫描后生成的点的集合,大规模场景扫描的点数据量通常是数亿或数十亿点,文件大小往往可达10G以上,然而目前的大规模点云数据无法实现直接加载,而是通过八叉树结构和多线程来实现对数据文件的预处理,再放入本地加载,当前大规模点云数据的加载方式存在一定的局限性,不能满足点云数据在线渲染的场景,也不能对在线点云数据进行修改和回存数据。
发明内容
本发明为解决上述的问题,第一方面提供了一种点云数据线上渲染修改方法,应用于服务器端,包括:
所述服务器端对上传的点云原始数据的数据结构进行转换,并通过八叉树层状结构进行数据存储;
根据八叉树层状结构得到存储所述点云原始数据的索引信息;
所述服务器端接收请求信息所组成的节点地址集合,确定待修改的点云数据的存储位置;
对节点地址集合中的请求信息进行批量处理,根据索引信息在内存中加载八叉树层状结构对应位置的点云原始数据进行渲染修改;
将修改后的点云数据存储于缓存队列进行回传,直至节点地址集合中的全部请求信息处理结束。
在第一方面的一些实现方式中,所述服务器端对节点地址集合中的请求信息进行批量处理,具体为:
根据节点地址集合构建请求信息队列,缓冲数据请求,基于请求信息队列依次加载点云数据执行在线渲染修改。
若所述服务器接收节点地址集合中的请求信息携带场景改变参数,则清空现有的请求信息队列,构建新的请求信息队列。
在第一方面的一些实现方式中,所述服务器端对上传的点云原始数据的数据结构进行转换,具体方法为:
对上传的点云原始数据进行分块处理,根据点云原始数据的文件大小和点的数量确定每个点云块的大小和点数量。
在第一方面的一些实现方式中,所述通过八叉树层状结构进行数据存储,具体方法为:
将所述点云块的点数据存储于八叉树层状结构的叶子节点,中间节点记录所述点云块数据的地理坐标范围和子节点信息,即索引信息。
所述点云数据线上渲染修改方法还包括:
所述节点地址集合中的全部请求信息结束后,将缓存队列存储的点云数据进行本地回写;
或所述缓存队列存储的点云数据达到缓存阈值时,则进行本地回写;
或现有的请求队列被清空,构建新的请求队列,则进行本地回写。
作为具体的实施方式,所述将缓存队列已修改的点云数据进行本地回写,包括:
将已修改的点云数据存储至与点云原始数据存储位置不同的存储位置,并通过八叉树层状结构进行数据存储,得到所述已修改的点云数据的索引信息;
若存在对同一点云原始数据进行多次修改的情况,则每次修改后,都将已修改的点云数据存储至不同的存储位置,并通过八叉树层状结构进行数据存储,得到所有已修改的点云数据的索引信息,并根据渲染的方式或者修改时间,为对应的索引信息添加渲染标签。
第二方面提供了一种点云数据线上渲染修改系统,包括:
存储模块,用于对上传的点云原始数据的数据结构进行转换,并通过八叉树层状结构进行数据存储;
索引模块,用于根据八叉树层状结构得到存储所述点云原始数据的索引信息;还用于接收请求信息所组成的节点地址集合,确定待修改的点云数据的存储位置;
执行模块,用于对节点地址集合中的请求信息进行批量处理,根据索引信息加载八叉树层状结构对应位置的点云原始数据进行渲染修改;
缓存模块,用于将渲染修改后的点云数据进行回传存储于缓存队列,直至节点地址集合中的全部请求信息结束。
第三方面提供了一种点云数据线上渲染修改设备,包括处理器和存储器,其中,所述处理器执行所述存储器中保存的程序数据时实现如上所述的点云数据线上渲染修改方法。
第四方面提供了一种计算机可读介质,用于存储控制程序数据,其中,所述控制程序数据被处理器执行时实现如上所述的点云数据线上渲染修改方法。
本发明有益效果在于:
(1)本发明采用八叉树层状结构进行点云块的存储,可以根据八叉树索引信息快速查找到点云块的位置信息和点云数据,缩短了点云数据在线加载的时间;
(2)本发明在服务器端设置了缓存队列,用于应对大量场景变换的操作场景;
(3)本发明通过提供了在线编辑点云数据方法,用于应对大量点云编辑操作时的服务器卡顿问题,满足点云数据在线渲染的场景,提高了在线编辑点云数据的速度。
附图说明
图1为点云数据线上渲染修改方法的流程示意图。
具体实施方式
下面将结合附图更详细地描述本公开的示例性实施方式。
参见图1,本发明提供了一种点云数据线上渲染修改方法,应用于服务器端,具体实现步骤如下:
步骤一:所述服务器端对上传的点云原始数据的数据结构进行转换,并通过八叉树层状结构进行数据存储;
所述服务器端对上传的点云原始数据进行分块处理,根据点云原始数据的文件大小和点的数量确定每个点云块的大小和点数量。保证每个点云块数据内存小于等于5M,将所述点云块的点数据存储于八叉树层状结构的叶子节点,中间节点记录所述点云块数据的地理坐标范围和子节点信息,即索引信息。
步骤二:根据八叉树层状结构得到存储所述点云原始数据的索引信息;
所述服务器端首先根据点云原始数据结构树的索引信息返回至客户端,当客户端需要在视口中对点云数据进行渲染修改时,根据视口的地理信息和点云数据的索引信息,确定待渲染的点云块,从而生成请求信息。并且根据需要渲染修改的不同点云块,生成若干请求信息,所述若干请求信息组成节点地址集合(简称url集合),所述客户端发送url集合至服务器端。
步骤三:所述服务器端接收请求信息所组成的节点地址集合,确定待修改的点云数据的存储位置;
步骤四:对节点地址集合中的请求信息进行批量处理,根据索引信息在内存中加载八叉树层状结构对应位置的点云原始数据进行渲染修改;
所述服务器端在接收到客户端的url集合请求时,能够对url集合中的请求信息进行批量处理,根据url集合构建请求信息队列,缓冲数据请求,基于请求信息队列快速查找索引信息对应存储的点云块,依次加载点云数据实现数据的懒加载,所述客户端能够通过视口在线执行对点云块的渲染修改。
同时,若所述服务器接收url集合中的请求信息携带场景改变参数,则清空现有的请求信息队列,构建新的请求信息队列,所述服务端重新对新的请求信息队列中url集合的请求信息进行处理。
步骤五:将渲染修改后的点云数据进行回传存储于缓存队列,直至节点地址集合中的全部请求信息处理结束;
客户端通过视口对点云数据进行在线渲染修改后,修改后的点云数据索引信息和点云块回传给服务器端,所述服务器端对修改的点云数据进行缓存处理,等等下次查询。当所述节点地址集合中的全部请求信息结束后,将缓存队列存储的点云数据进行本地回写;或所述缓存队列存储的点云数据达到缓存阈值时,则进行本地回写;或现有的请求队列被清空,构建新的请求队列,则进行本地回写。
具体地,所述将缓存队列已修改的点云数据进行本地回写,包括:
将已修改的点云数据存储至与点云原始数据存储位置不同的存储位置,并通过八叉树层状结构进行数据存储,得到所述已修改的点云数据的索引信息;
若存在对同一点云原始数据进行多次修改的情况,则每次修改后,都将已修改的点云数据存储至不同的存储位置,并通过八叉树层状结构进行数据存储,得到所有已修改的点云数据的索引信息,并根据渲染的方式或者修改时间,为对应的索引信息添加渲染标签。使得所述服务器端既能保存点云原始数据,也能保存不同修改日期的点云数据,实现原始数据与新渲染修改数据的对比;同时,该方法也能在点云原始数据的基础上实现多次同步修改,使得所述客户端在若干次渲染修改后想要重新进行点云原始数据的修改,避免对点云原始数据的重新上传加载,提升工作效率。
本发明通过采用八叉树层状结构进行点云块的存储,可以根据八叉树索引信息快速查找到点云块的位置信息和点云数据,缩短了点云数据在线加载的时间;并在服务器端设置了缓存队列,用于应对大量场景变换的操作场景;通过提供了点云数据的在线编辑,解决大量点云编辑操作时的服务器卡顿问题,满足点云数据在线渲染的场景,提高了在线编辑点云数据的速度。
此外,本发明提供了一种点云数据线上渲染修改系统,包括:
存储模块用于对上传的点云原始数据的数据结构进行转换,并通过八叉树层状结构进行数据存储;对上传的点云原始数据进行分块处理,根据点云原始数据的文件大小和点的数量确定每个点云块的大小和点数量。保证每个点云块数据内存小于等于5M,将所述点云块的点数据存储于八叉树层状结构的叶子节点,中间节点记录所述点云块数据的地理坐标范围和子节点信息;
索引模块根据八叉树层状结构得到存储所述点云原始数据的索引信息;还用于接收根据所述索引信息生成的请求信息所组成的节点地址集合,确定待修改的点云数据的存储位置;
执行模块用于对节点地址集合中的请求信息进行批量处理,根据索引信息加载八叉树层状结构对应位置的点云原始数据进行渲染修改;在接收到客户端的url集合请求时,能够对url集合中的请求信息进行批量处理,根据url集合构建请求信息队列,缓冲数据请求,基于请求信息队列快速查找索引信息对应存储的点云块,依次加载点云数据实现数据的懒加载,在线执行对点云块的渲染修改;
缓存模块用于将渲染修改后的点云数据进行回传存储于缓存队列,直至节点地址集合中的全部请求信息处理结束;当所述节点地址集合中的全部请求信息结束后,将缓存队列存储的点云数据进行本地回写;或所述缓存队列存储的点云数据达到缓存阈值时,则进行本地回写;或现有的请求队列被清空,构建新的请求队列,则进行本地回写。
再者,本发明提供了一种点云数据线上渲染修改设备,包括处理器和存储器,其中,所述处理器执行所述存储器中保存的程序数据时实现如上所述的点云数据线上渲染修改方法。
最后,本发明提供了一种计算机可读介质,用于存储控制程序数据,其中,该控制程序数据被处理器执行时实现如上所述的点云数据线上渲染修改方法。
Claims (8)
1.一种点云数据线上渲染修改方法,应用于服务器端,其特征在于,包括:
所述服务器端对上传的点云原始数据的数据结构进行转换,并通过八叉树层状结构进行数据存储;
根据八叉树层状结构得到存储所述点云原始数据的索引信息;
所述服务器端接收请求信息所组成的节点地址集合,确定待修改的点云数据的存储位置;
对节点地址集合中的请求信息进行批量处理,根据索引信息在内存中加载八叉树层状结构对应位置的点云原始数据进行渲染修改;
所述服务器端对节点地址集合中的请求信息进行批量处理,根据节点地址集合构建请求信息队列,缓冲数据请求,基于请求信息队列依次加载点云数据执行在线渲染修改;若所述服务器端接收节点地址集合中的请求信息携带场景改变参数,则清空现有的请求信息队列,构建新的请求信息队列;
将修改后的点云数据存储于缓存队列进行回传,直至节点地址集合中的全部请求信息处理结束。
2.根据权利要求1所述的一种点云数据线上渲染修改方法,其特征在于,所述服务器端对上传的点云原始数据的数据结构进行转换,具体方法为:
对上传的点云原始数据进行分块处理,根据点云原始数据的文件大小和点的数量确定每个点云块的大小和点数量。
3.根据权利要求2所述的一种点云数据线上渲染修改方法,其特征在于,所述通过八叉树层状结构进行数据存储,具体方法为:
将点云块的点数据存储于八叉树层状结构的叶子节点,中间节点记录点云块数据的地理坐标范围和子节点信息。
4.根据权利要求1所述的一种点云数据线上渲染修改方法,其特征在于,还包括:
所述节点地址集合中的全部请求信息处理结束后,将缓存队列已修改的点云数据进行本地回写;
或所述缓存队列存储的点云数据达到缓存阈值时,则进行本地回写;
或现有的请求信息队列被清空,构建新的请求信息队列,则进行本地回写。
5.根据权利要求4所述的一种点云数据线上渲染修改方法,其特征在于,所述将缓存队列已修改的点云数据进行本地回写,包括:
将已修改的点云数据存储至与点云原始数据存储位置不同的存储位置,并通过八叉树层状结构进行数据存储,得到所述已修改的点云数据的索引信息;
若存在对同一点云原始数据进行多次修改的情况,则每次修改后,都将已修改的点云数据存储至不同的存储位置,并通过八叉树层状结构进行数据存储,得到所有已修改的点云数据的索引信息,并根据渲染的方式或者修改时间,为对应的索引信息添加渲染标签。
6.一种点云数据线上渲染修改系统,其特征在于,包括:
存储模块,用于对上传的点云原始数据的数据结构进行转换,并通过八叉树层状结构进行数据存储;
索引模块,根据八叉树层状结构得到存储所述点云原始数据的索引信息;
所述索引模块,还用于接收根据请求信息所组成的节点地址集合,确定待修改的点云数据的存储位置;
执行模块,用于对节点地址集合中的请求信息进行批量处理,根据索引信息在内存中加载八叉树层状结构对应位置的点云原始数据进行渲染修改;所述对节点地址集合中的请求信息进行批量处理,根据节点地址集合构建请求信息队列,缓冲数据请求,基于请求信息队列依次加载点云数据执行在线渲染修改;若接收节点地址集合中的请求信息携带场景改变参数,则清空现有的请求信息队列,构建新的请求信息队列;
缓存模块,用于将修改后的点云数据存储于缓存队列进行回传,直至节点地址集合中的全部请求信息处理结束。
7.一种点云数据线上渲染修改设备,其特征在于,包括处理器和存储器,其中,所述处理器执行所述存储器中保存的程序数据时实现如权利要求1-5中任一项所述的点云数据线上渲染修改方法。
8.一种计算机可读介质,其特征在于,用于存储控制程序数据,其中,所述控制程序数据被处理器执行时实现如权利要求1-5任一项所述的点云数据线上渲染修改方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311130594.3A CN117078825B (zh) | 2023-09-04 | 2023-09-04 | 一种点云数据线上渲染修改方法、系统、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311130594.3A CN117078825B (zh) | 2023-09-04 | 2023-09-04 | 一种点云数据线上渲染修改方法、系统、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117078825A CN117078825A (zh) | 2023-11-17 |
CN117078825B true CN117078825B (zh) | 2024-05-28 |
Family
ID=88711626
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311130594.3A Active CN117078825B (zh) | 2023-09-04 | 2023-09-04 | 一种点云数据线上渲染修改方法、系统、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117078825B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110297924A (zh) * | 2019-06-26 | 2019-10-01 | 深圳飞马机器人科技有限公司 | 点云数据的处理及渲染方法、装置、设备及存储介质 |
CN114756798A (zh) * | 2022-06-13 | 2022-07-15 | 中汽创智科技有限公司 | 基于Web端的点云渲染方法、系统及存储介质 |
CN115496835A (zh) * | 2022-09-20 | 2022-12-20 | 北京数字绿土科技股份有限公司 | 一种基于cpu和gpu异构并行架构的点云数据赋色方法和系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11210845B2 (en) * | 2020-04-22 | 2021-12-28 | Pony Ai Inc. | Point cloud data reformatting |
-
2023
- 2023-09-04 CN CN202311130594.3A patent/CN117078825B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110297924A (zh) * | 2019-06-26 | 2019-10-01 | 深圳飞马机器人科技有限公司 | 点云数据的处理及渲染方法、装置、设备及存储介质 |
CN114756798A (zh) * | 2022-06-13 | 2022-07-15 | 中汽创智科技有限公司 | 基于Web端的点云渲染方法、系统及存储介质 |
CN115496835A (zh) * | 2022-09-20 | 2022-12-20 | 北京数字绿土科技股份有限公司 | 一种基于cpu和gpu异构并行架构的点云数据赋色方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN117078825A (zh) | 2023-11-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10593110B2 (en) | Method and device for computing a path in a game scene | |
AU2018258094B2 (en) | Octree-based convolutional neural network | |
CN110632608B (zh) | 一种基于激光点云的目标检测方法和装置 | |
CN111127615A (zh) | 一种三维模型的数据调度方法、装置及电子设备 | |
CN117015806A (zh) | 高分辨率神经渲染 | |
CN112927359A (zh) | 一种基于深度学习和体素的三维点云补全方法 | |
US11238641B2 (en) | Architecture for contextual memories in map representation for 3D reconstruction and navigation | |
US11860846B2 (en) | Methods, systems and apparatus to improve spatial-temporal data management | |
CN115457492A (zh) | 目标检测方法、装置、计算机设备及存储介质 | |
CN114627239B (zh) | 包围盒生成方法、装置、设备及存储介质 | |
CN117705119A (zh) | 大场景3d地图动态加载的导航定位方法、设备及存储介质 | |
CN106445445B (zh) | 一种矢量数据的处理方法及装置 | |
CN109255004A (zh) | 面向地理空间数据的精度保证的在线交互式可视化方法 | |
CN117078825B (zh) | 一种点云数据线上渲染修改方法、系统、设备及介质 | |
CN111950057A (zh) | 一种建筑信息模型bim的加载方法及装置 | |
CN111402422A (zh) | 三维表面重建方法、装置和电子设备 | |
CN110887490A (zh) | 一种激光定位导航的关键帧选取方法、介质、终端和装置 | |
CN113496543A (zh) | 一种点云数据筛选方法、装置、电子设备和存储介质 | |
CN112669426B (zh) | 基于生成对抗网络的三维地理信息模型渲染方法及系统 | |
CN109901164B (zh) | 一种合成孔径雷达的分布式后向投影成像方法 | |
CN114219697A (zh) | 一种基于cuda的运动目标实时热力图生成方法 | |
Bormann et al. | Real-time indexing of point cloud data during LiDAR capture | |
CN108809726B (zh) | 盒覆盖节点的方法和系统 | |
CN116883575B (zh) | 建筑群渲染方法、装置、计算机设备和存储介质 | |
Abdallah | 3D Web-Based Shape Modelling: Data Extraction and Delivery |
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 |