CN112802179B - 一种基于法向的大规模点云可视化方法 - Google Patents

一种基于法向的大规模点云可视化方法 Download PDF

Info

Publication number
CN112802179B
CN112802179B CN202110061813.1A CN202110061813A CN112802179B CN 112802179 B CN112802179 B CN 112802179B CN 202110061813 A CN202110061813 A CN 202110061813A CN 112802179 B CN112802179 B CN 112802179B
Authority
CN
China
Prior art keywords
node
nodes
point cloud
normal
rendering
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
Application number
CN202110061813.1A
Other languages
English (en)
Other versions
CN112802179A (zh
Inventor
汪俊
李子宽
黄安义
谢乾
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing University of Aeronautics and Astronautics
Original Assignee
Nanjing University of Aeronautics and Astronautics
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Nanjing University of Aeronautics and Astronautics filed Critical Nanjing University of Aeronautics and Astronautics
Priority to CN202110061813.1A priority Critical patent/CN112802179B/zh
Publication of CN112802179A publication Critical patent/CN112802179A/zh
Application granted granted Critical
Publication of CN112802179B publication Critical patent/CN112802179B/zh
Priority to US17/574,796 priority patent/US11532123B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/005Tree description, e.g. octree, quadtree
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/36Level of detail
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/56Particle system, point based geometry or rendering

Abstract

本发明涉及一种基于法向的大规模点云可视化方法,步骤S1、根据点云数据的空间结构,构建节点点云平衡的八叉树结构;步骤S2、根据平衡的八叉树结构和点云的法向信息,构建具有法向信息的八叉树结构,并通过下采样方式构建法向LOD可视化节点;步骤S3、最后根据视点和视锥体与渲染节点法向的关系,确定节点调度策略,根据当前调度策略分别调用读取线程和渲染线程同时读取和渲染。本发明通过加入法向信息来约束渲染节点,解决了大规模点云渲染过程中大量被遮挡点云和场景背面点云等无效渲染的问题,降低了实际渲染点云的点个数,保证了点云显示的真实性。

Description

一种基于法向的大规模点云可视化方法
技术领域
本发明涉及三维数据可视化领域,具体而言,涉及一种基于法向的大规模点云可视化方法。
背景技术
近些年,激光雷达和三维扫描技术被广泛应用于测绘,电力线巡检,数字城市,古建筑保护,军工设备测量以及数字孪生等领域。三维扫描技术在使用过程中能快速地获取海量的三维点云数据,这些数据往往具有上亿量级的规模,除包含数据点坐标外,通常还包含反射强度,法线方向等信息。如何实现大规模点云的有效存储以及可视化是目前亟待解决的热门问题。
规模庞大的点云数据的存储与显示都将消耗大量的计算机资源,合理地组织、管理和显示大规模点云直接关系到点云数据在实际应用当中的可视化效果。近年提出的点云可视化方法中,通过分块索引的思想来解决无法将点云全部读取到内存的问题,但对于复杂结构的点云在分块渲染过程中仍有点云遮挡和场景背面点云等无效渲染的问题,导致计算机渲染资源浪费,尤其面对大规模点云数据时,资源浪费将更为严重。
发明内容
本发明针对现有技术的不足,提出一种基于法向的大规模点云可视化方法,解决现有技术中大规模点云可视化对于被遮挡点云的无效渲染以及资源浪费问题。
为实现上述目的,本发明采用以下技术方案:
一种基于法向的大规模点云可视化方法,包括如下步骤:
步骤S1、根据点云数据的空间结构,构建节点点云平衡的八叉树结构;
步骤S2、根据平衡的八叉树结构和点云的法向信息,构建具有法向信息的八叉树结构,并通过下采样方式构建法向LOD可视化节点;
步骤S3、根据视点和视锥体与渲染节点法向的关系,确定节点调度策略,根据当前调度策略分别调用读取线程和渲染线程同时读取和渲染;
进一步地,步骤S1包括:
步骤S101、根据点云的范围设定最大包围盒作为八叉树的根节点,并根据点云的点个数设定建立的八叉树层级;从根节点开始自上而下生成八叉树结构直到设定的层级,并将点云数据全部分配到最底层子节点;
步骤S102、设置最底层子节点的点数阈值ε,对八叉树进行平衡性调整,使得每个节点分配的点云个数都小于点数阈值ε且该节点的父节点大于点数阈值ε。
进一步地,步骤S102具体包括:
步骤S102-1、将所有已经分配点云的最底层子节点标记为待调整节点,放入待调整节点序列;
步骤S102-2、遍历所有待调整节点序列,若节点点数大于等于点数阈值ε,则生成下一层8个节点,并将该节点点云分配到下一层,将新生成的8个节点标记为待调整节点,放入待调整节点序列;若节点点数小于点数阈值ε,则判断其父节点包括的8个子节点的总点数是否大于点数阈值ε,若大于等于,则将该节点标记为已调整节点,若小于,则将这8个子节点删除并将他们的点云分配给其父节点,将其父节点标记为待调整节点,放入待调整节点序列;
步骤S102-3、若八叉树结构中还存在待调整节点,重复步骤S102-2,直到所有节点都被标记为已调整节点。
进一步地,步骤S2包括:
步骤S201、计算每个最底层子节点所有点的平均法向作为该节点的法向,以节点的点个数占点云所有点的比例作为该节点的法向权值;
步骤S202、自下而上对子节点的点云数据进行下采样,将子节点下采样的点云放入上一层对应的父节点中,并根据子节点的法向和法向权重计算父节点的法向和法向权重。按此规律逐层操作直至根节点,得到所有的法向LOD可视化节点。
进一步地,步骤S3包括:
步骤S301、根据视点和视锥体与渲染节点法向的关系,确定需要可视化的LOD节点队列;
步骤S302、使用读取线程去读取可视化LOD节点队列,使用渲染线程去渲染已经读取的节点队列。
进一步地,步骤S301包括:定义视线方向为
Figure BDA0002902644610000021
视点到点云的最近距离为d,每个节点具有一个法向方向Mni;首先根据d判断需要显示的层级,然后根据视锥体判断该层级需要显示的节点,最后根据条件
Figure BDA0002902644610000022
确定需要可视化的LOD节点队列。
本发明的有益效果是:
现有技术在大规模点云渲染过程中存在大量被遮挡点云无效渲染的问题。本发明利用点云法线特征筛选出当前视角下需要渲染的点,能够有效去掉被遮挡点云和场景背面点云的多余渲染,降低了实际渲染点云的点个数,保证了点云显示的真实性,从而提供了高效的实时大规模点云可视化方法。
附图说明
图1为本发明的基于法向的大规模点云可视化方法流程图;
图2为视椎体区域与法向判断节点示意图。
具体实施方式
下面结合附图和具体的实施例对本发明的基于法向的大规模点云可视化方法作进一步地详细说明。
如图1所示,一种基于法向的大规模点云可视化方法,包括如下步骤:
步骤S1、根据点云数据的空间结构,构建节点点云平衡的八叉树结构。包括:
步骤S101、读取包括位置信息与法向信息的原始点云数据,统计得到点云的范围Pmin和Pmax,以他们的中点(Pmin+Pmax)/2作为包围盒中心,以点云范围的最大边长Hmax=max(Pmax-Pmin)作为包围盒的边长,以该包围盒作为八叉树的根节点。根据该点云的总点个数n设定预设的八叉树层级
Figure BDA0002902644610000031
从根节点开始自上而下生成八叉树结构直到设定的层级L,并将点云数据全部分配到最底层子节点,即L层的节点。
步骤S102、设置最底层子节点的点数阈值ε,对已经预处理八叉树结构进行平衡性调整,使得每个节点分配的点云个数都小于点数阈值ε且该节点的父节点大于点数阈值ε,进而得到平衡的八叉树结构。具体地,步骤S102包括:
步骤S102-1、将所有已经分配点云的最底层子节点标记为待调整节点,放入待调整节点序列。
步骤S102-2、遍历所有待调整节点序列,若节点点数大于等于点数阈值ε,则生成下一层8个节点,并将该节点点云分配到下一层,将新生成的8个节点标记为待调整节点,放入待调整节点序列。若节点点数小于点数阈值ε,则判断其父节点包括的8个子节点的总点数是否大于点数阈值ε,若大于等于,则将该节点标记为已调整节点,若小于,则将这8个子节点删除并将他们的点云分配给其父节点,将其父节点标记为待调整节点,放入待调整节点序列。
步骤S102-3、若八叉树结构中还存在待调整节点,重复步骤S102-2,直到所有节点都被标记为已调整节点。
步骤S2、根据平衡的八叉树结构和点云的法向信息,构建具有法向信息的八叉树结构,并通过下采样方式构建法向LOD可视化节点。包括:
步骤S201、最底层子节点Mi中点云个数表示为mi,节点中的点云表示为Qj,包括位置信息Qpj(xj,yj,zj)与法向信息Qnj(nxj,nyj,nzj),计算该节点法向
Figure BDA0002902644610000041
该节点的权重为
Figure BDA0002902644610000042
步骤S202、此时原始点云都被分配到最底层子节点上,自下而上对子节点的点云数据进行下采样,将子节点下采样的点云放入上一层对应的父节点中,并根据其8个子节点的法向和法向权重计算父节点的法向
Figure BDA0002902644610000043
而该节点的权重为
Figure BDA0002902644610000044
按此规律逐层操作直至根节点位置,得到所有的法向LOD可视化节点。
步骤S3、根据视点和视锥体与渲染节点法向的关系,确定节点调度策略,根据当前调度策略分别调用读取线程和渲染线程同时读取和渲染。包括:
步骤S301、如图2所示,根据视点和视锥体与渲染节点法向的关系确定需要可视化的LOD节点队列。定义视线方向为
Figure BDA0002902644610000045
视点到点云的最近距离为d,每个节点具有一个法向方向Mni。本方法只简单设置一个方程来判断显示层级
Figure BDA0002902644610000046
其中,Lmax为最底层层数,Hmax为点云范围的最大边长,当d越小时,显示层级越高,根据d确定需要显示的层级L。首先根据当前的视锥体,如果该节点在视椎体内或者与视椎体相交,那就将节点显示,如果不在视椎体范围内的节点则不显示。再根据节点法向进一步判断。由于真实场景中,视线方向与物体表面是成钝角的,我们可以设置条件如果
Figure BDA0002902644610000051
则该节点显示,
Figure BDA0002902644610000052
则该节点不显示,进而确定需要可视化的LOD节点队列。
步骤S302、确定需要可视化的LOD节点队列后,使用读取线程去读取可视化LOD节点队列,使用渲染线程去渲染已经读取的节点队列。
以上仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,应视为本发明的保护范围。

Claims (4)

1.一种基于法向的大规模点云可视化方法,其特征在于,包括如下步骤:
步骤S1、根据点云数据的空间结构,构建节点点云平衡的八叉树结构;步骤S1具体内容为:
步骤S101、根据点云的范围设定最大包围盒作为八叉树的根节点,并根据点云的点个数设定建立的八叉树层级;从根节点开始自上而下生成八叉树结构直到设定的层级,并将点云数据全部分配到最底层子节点;
步骤S102、设置最底层子节点的点数阈值ε,对八叉树进行平衡性调整,使得每个节点分配的点云个数都小于点数阈值ε且该节点的父节点大于点数阈值ε;
步骤S2、根据平衡的八叉树结构和点云的法向信息,构建具有法向信息的八叉树结构,并通过下采样方式构建法向LOD可视化节点;步骤S2具体内容为:
步骤S201、计算每个最底层子节点所有点的平均法向作为该节点的法向,以节点的点个数占点云所有点的比例作为该节点的法向权值;
步骤S202、自下而上对子节点的点云数据进行下采样,将子节点下采样的点云放入上一层对应的父节点中,并根据子节点的法向和法向权重计算父节点的法向和法向权重;按此规律逐层操作直至根节点,得到所有的法向LOD可视化节点;
步骤S3、根据视点和视锥体与渲染节点法向的关系,确定节点调度策略,根据当前调度策略分别调用读取线程和渲染线程同时读取和渲染。
2.根据权利要求1所述的基于法向的大规模点云可视化方法,其特征在于,步骤S102具体为:
步骤S102-1、将所有已经分配点云的最底层子节点标记为待调整节点,放入待调整节点序列;
步骤S102-2、遍历所有待调整节点序列,若节点点数大于等于点数阈值ε,则生成下一层8个节点,并将该节点点云分配到下一层,将新生成的8个节点标记为待调整节点,放入待调整节点序列;若节点点数小于点数阈值ε,则判断其父节点包括的8个子节点的总点数是否大于点数阈值ε,若大于等于,则将该节点标记为已调整节点,若小于,则将这8个子节点删除并将他们的点云分配给其父节点,将其父节点标记为待调整节点,放入待调整节点序列;
步骤S102-3、若八叉树结构中还存在待调整节点,重复步骤S102-2,直到所有节点都被标记为已调整节点。
3.根据权利要求1至2中任一项所述的基于法向的大规模点云可视化方法,其特征在于,步骤S3包括:
步骤S301、根据视点和视锥体与渲染节点法向的关系,确定需要可视化的LOD节点队列;
步骤S302、使用读取线程去读取可视化LOD节点队列,使用渲染线程去渲染已经读取的节点队列。
4.根据权利要求3所述的基于法向的大规模点云可视化方法,其特征在于,步骤S301包括:定义视线方向为
Figure FDA0003328126030000021
视点到点云的最近距离为d,每个节点具有一个法向方向Mni;首先根据d判断需要显示的层级,然后根据视锥体判断该层级需要显示的节点,最后根据条件
Figure FDA0003328126030000022
确定需要可视化的LOD节点队列。
CN202110061813.1A 2021-01-18 2021-01-18 一种基于法向的大规模点云可视化方法 Active CN112802179B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202110061813.1A CN112802179B (zh) 2021-01-18 2021-01-18 一种基于法向的大规模点云可视化方法
US17/574,796 US11532123B2 (en) 2021-01-18 2022-01-13 Method for visualizing large-scale point cloud based on normal

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110061813.1A CN112802179B (zh) 2021-01-18 2021-01-18 一种基于法向的大规模点云可视化方法

Publications (2)

Publication Number Publication Date
CN112802179A CN112802179A (zh) 2021-05-14
CN112802179B true CN112802179B (zh) 2021-12-07

Family

ID=75810041

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110061813.1A Active CN112802179B (zh) 2021-01-18 2021-01-18 一种基于法向的大规模点云可视化方法

Country Status (2)

Country Link
US (1) US11532123B2 (zh)
CN (1) CN112802179B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113836484B (zh) * 2021-08-11 2023-05-16 浙江省测绘科学技术研究院 基于路径点邻近域与地面滤波的自适应点云抽稀方法
CN113778130B (zh) 2021-09-24 2022-04-15 南京航空航天大学 一种基于三维模型的无人机覆盖路径规划方法
CN114387375B (zh) * 2022-01-17 2023-05-16 重庆市勘测院(重庆市地图编制中心) 一种海量点云数据多视图渲染方法
CN116109752B (zh) * 2023-04-12 2023-06-20 深圳市其域创新科技有限公司 一种点云实时采集结构化及渲染方法
CN116570925A (zh) * 2023-05-19 2023-08-11 韶关学院 一种基于ar开发的资源管理方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109544681A (zh) * 2018-11-26 2019-03-29 西北农林科技大学 一种基于点云的果实三维数字化方法
CN110689611A (zh) * 2019-09-30 2020-01-14 北京邮电大学 一种空间遥操作中基于实时重建模型的预测显示方法
CN111552555A (zh) * 2020-05-19 2020-08-18 北京数字绿土科技有限公司 一种点云的可视化方法和设备

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6580425B1 (en) * 2000-02-28 2003-06-17 Mitsubishi Electric Research Laboratories, Inc. Hierarchical data structures for surface elements
US9245382B2 (en) * 2008-10-04 2016-01-26 Microsoft Technology Licensing, Llc User-guided surface reconstruction
US20130249899A1 (en) * 2012-03-07 2013-09-26 Willow Garage Inc. Point cloud data hierarchy
EP3467789A1 (en) * 2017-10-06 2019-04-10 Thomson Licensing A method and apparatus for reconstructing a point cloud representing a 3d object
US11010928B2 (en) * 2018-04-10 2021-05-18 Apple Inc. Adaptive distance based point cloud compression
CN109325993B (zh) * 2018-08-10 2023-01-06 华北电力大学(保定) 一种基于类八叉树索引的显著性特征强化采样方法
US11257199B2 (en) * 2018-10-18 2022-02-22 Wisconsin Alumni Research Foundation Systems, methods, and media for detecting manipulations of point cloud data
US11409998B2 (en) * 2019-10-02 2022-08-09 Apple Inc. Trimming search space for nearest neighbor determinations in point cloud compression
JP7328447B2 (ja) * 2019-10-03 2023-08-16 エルジー エレクトロニクス インコーポレイティド ポイントクラウドデータ送信装置、ポイントクラウドデータ送信方法、ポイントクラウドデータ受信装置及びポイントクラウドデータ受信方法
JP7433442B2 (ja) * 2020-01-07 2024-02-19 エルジー エレクトロニクス インコーポレイティド ポイントクラウドデータ送信装置、送信方法、処理装置および処理方法
US11551412B2 (en) * 2020-07-24 2023-01-10 Cesium GS, Inc. Systems and methods for traversing implied subdivision hierarchical level of detail content

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109544681A (zh) * 2018-11-26 2019-03-29 西北农林科技大学 一种基于点云的果实三维数字化方法
CN110689611A (zh) * 2019-09-30 2020-01-14 北京邮电大学 一种空间遥操作中基于实时重建模型的预测显示方法
CN111552555A (zh) * 2020-05-19 2020-08-18 北京数字绿土科技有限公司 一种点云的可视化方法和设备

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
A variational model for normal computation of point clouds;Wang, Jun 等;《VISUAL COMPUTER》;20120229;第28卷(第2期);第163-174页 *
面向城市建筑物3D点云模型的快速绘制方法;朱利 等;《计算机辅助设计与图形学学报》;20150831;第27卷(第8期);第1442-1450页 *

Also Published As

Publication number Publication date
US20220198748A1 (en) 2022-06-23
US11532123B2 (en) 2022-12-20
CN112802179A (zh) 2021-05-14

Similar Documents

Publication Publication Date Title
CN112802179B (zh) 一种基于法向的大规模点云可视化方法
CN110738721B (zh) 基于视频几何分析的三维场景渲染加速方法及系统
US7023438B2 (en) Method and apparatus for rendering shadows
KR101546703B1 (ko) 대용량 건물 bim데이터의 시각화 시스템
CN105261066B (zh) 一种三维地理信息系统实时绘制多线程分配与控制方法
CN112308974B (zh) 一种改进八叉树和自适应读取的大规模点云可视化方法
KR101546705B1 (ko) Bim데이터 처리단말 장치의 건물내부 bim데이터 가시화 방법
CN108537869B (zh) 一种基于级联纹理的圆锥追踪动态全局光照方法
JP4140812B2 (ja) グラフィックス・モデルのサーフェスの向きのディテール指向の階層表現を生成する方法
Derzapf et al. River networks for instant procedural planets
CN115953541B (zh) 一种四叉树lod地形生成方法、装置、设备及存储介质
CN112906125B (zh) 铁路固定设施bim模型轻量化加载方法
CN111061729B (zh) 顾及粒度的矢量瓦片组织方法
CN112541047A (zh) 一种适用于多级网格化管理系统的海量数据聚合方法
Polis et al. Issues in iterative TIN generation to support large scale simulations
CN114332322A (zh) 一种三维场景下单体模型的大数据渲染方法
CN114170394A (zh) 一种海量倾斜数据在Web端的展示优化方法及装置
Glander et al. Concepts for automatic generalization of virtual 3D landscape models
CN113495935A (zh) 一种基于不规则三角化网格剖分的地形切片方法和系统
JP4144731B2 (ja) グラフィックス・モデルのためのレンダリング要素を動的に生成するための方法
CN116109752B (zh) 一种点云实时采集结构化及渲染方法
CN115205434B (zh) 一种点云数据的可视化处理方法和装置
CN113034685B (zh) 激光点云与高精地图的叠加方法、装置及电子设备
CN111415414B (zh) 一种三维空间信息处理方法、设备及其存储介质
CN116010540A (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