CN114387375A - 一种海量点云数据多视图渲染方法 - Google Patents

一种海量点云数据多视图渲染方法 Download PDF

Info

Publication number
CN114387375A
CN114387375A CN202210050524.6A CN202210050524A CN114387375A CN 114387375 A CN114387375 A CN 114387375A CN 202210050524 A CN202210050524 A CN 202210050524A CN 114387375 A CN114387375 A CN 114387375A
Authority
CN
China
Prior art keywords
point cloud
rendering
view
octree
model
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.)
Granted
Application number
CN202210050524.6A
Other languages
English (en)
Other versions
CN114387375B (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.)
Chongqing Institute Of Surveying And Mapping Science And Technology Chongqing Map Compilation Center
Original Assignee
Chongqing Survey Institute Chongqing Map Compilation Center
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 Chongqing Survey Institute Chongqing Map Compilation Center filed Critical Chongqing Survey Institute Chongqing Map Compilation Center
Priority to CN202210050524.6A priority Critical patent/CN114387375B/zh
Publication of CN114387375A publication Critical patent/CN114387375A/zh
Application granted granted Critical
Publication of CN114387375B publication Critical patent/CN114387375B/zh
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
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/005General purpose rendering architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2228Indexing structures
    • G06F16/2246Trees, e.g. B+trees
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy 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)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Graphics (AREA)
  • Computational Linguistics (AREA)
  • Image Generation (AREA)

Abstract

本发明提供一种海量点云数据多视图渲染方法,包括以下步骤:对原始点云数据进行多尺度自适应分块和八叉树索引构建;根据视口范围对各个视图分别筛选需要加载的八叉树,并确定八叉树加载的层次细节模型层级;层次细节模型加载线程加载层次细节模型数据,得到可供渲染的点云模型,将可供渲染的点云模型放入模型共享队列;各个视图根据自身需要加载的八叉树,从模型共享队列中查找视图范围内的可供渲染的点云模型,合并可供渲染的点云模型到场景,同时移除过期的可供渲染的点云模型;删除过期的可供渲染的点云模型。本发明可以解决对于海量点云数据进行多视图渲染时效率较低的技术问题。

Description

一种海量点云数据多视图渲染方法
技术领域
本发明涉及点云数据可视化处理技术领域,具体涉及一种海量点云数据多视图渲染方法。
背景技术
三维激光扫描技术能够直接获取被测目标表面的三维空间坐标,是新兴的三维数据获取技术,经过近十年的迅速发展,正逐渐成为三维空间数据获取的主要手段之一,被广泛应用于城市市政管理、城市部件普查、高精度地图生产、公路勘查设计与改扩建、数字城市构建、数字园林普查等领域。随着激光雷达扫描仪设备精度的不断提高,其获得的点云数据量也呈几何式上升,单个点云文件的大小一般在GB级。如此庞大的数据量给点云数据的可视化带来了挑战。
目前海量点云单个视图的可视化方法主要有两类:一是对点云数据进行实时动态抽稀的方法,该方法首先获取目标抽稀级别,依据目标抽稀级别对点云数据进行抽稀,以获得待渲染点云数据,但由于点云数据量巨大,实时动态抽稀的效率较低,从而影响了渲染效率;二是通过构建替换型LOD(Levels of Detail,层次细节模型)的方式实现海量点云数据的渲染,该方法首先对原始点云数据构建多层LOD模型,在渲染时,根据视点到模型的距离加载相应层级的LOD模型到内存进行渲染,在视点位置发生变化时,需要用新的LOD模型替换旧的LOD模型,该方法构建的LOD存在大量的数据冗余,占用了较大的存储空间,同时渲染效率较低。
随着对渲染效果要求的提升,对点云数据的可视化方式不再局限于单个视图,多视图、多角度的点云数据可视化方式更加的有助于作业人员对点云数据进行全方位的观察、分析,提高作业人员工作效率,这也成为目前研究的热点。对于点云数据的多视图渲染,目前主要是基于上述方法每个视图进行独立可视化,而没有充分考虑多视图之间点云数据的共享问题,导致渲染效率进一步降低。由此,如何高效的进行海量点云数据的多视图可视化,是目前亟待解决的问题。
发明内容
针对现有技术存在的不足,本发明提出一种海量点云数据多视图渲染方法,以解决现有技术中存在的对于海量点云数据进行多视图渲染时,效率较低的技术问题。
本发明采用的技术方案是,一种海量点云数据多视图渲染方法,包括以下步骤:
对原始点云数据进行多尺度自适应分块和八叉树索引构建;
根据视口范围对各个视图分别筛选需要加载的八叉树,并确定八叉树加载的层次细节模型层级;
层次细节模型加载线程加载层次细节模型数据,得到可供渲染的点云模型,将可供渲染的点云模型放入模型共享队列;
各个视图根据自身需要加载的八叉树,从模型共享队列中查找视图范围内的可供渲染的点云模型,合并可供渲染的点云模型到场景,同时移除过期的可供渲染的点云模型;
删除过期的可供渲染的点云模型。
进一步的,对原始点云数据进行多尺度自适应分块和八叉树索引构建,包括:
根据原始点云数据计算包围盒;
根据包围盒对原始点云数据进行多尺度自适应分块,得到分块点云;
对分块点云构建八叉树索引。
进一步的,包围盒根据原始点云数据的坐标最大值和坐标最小值进行计算。
进一步的,根据包围盒对原始点云数据进行多尺度自适应分块,包括:
将具有相同最小角点坐标的点云作为同一个分块;若同一个分块中的点云数量小于或等于预设的最大点云数量,停止分块;若同一个分块中的点云数量大于预设的最大点云数量,则按照最大分块尺寸的一半将当前块继续划分为多个子块,直到所有子块中的点云数量都不超过预设的最大点云数量。
进一步的,八叉树索引构建,包括:
设定八叉树划分层级及八叉树节点中包含的最大点数;
以当前分块点云的几何中心点作为八叉树的根节点,沿着X,Y和Z三个方向对当前分块点云进行划分,获得八个子节点;
若某个子节点中点云数量小于所述最大点数,则停止划分;
反之,则以该子节点为根节点继续进行划分,划分结束的条件为总层级超过所述划分层级或者八叉树节点中包含的点数小于所述最大点数;
将所有的分块点云保存在叶子节点中。
进一步的,根据视口范围对各个视图分别筛选需要加载的八叉树,包括:
根据当前视图的投影矩阵及视点位置构建当前的视锥体;
求取视锥体外包围盒,并与八叉树包围盒进行初步的位置判断:
若八叉树包围盒与视锥体外包围盒不相交且八叉树包围盒在视锥体包围盒外部,则说明八叉树不在当前视野范围内;反之,则对视锥体与八叉树进行进一步的相交、包含判断;
通过设置标签来标记八叉树是否在视锥体内。
进一步的,八叉树索引、生成的层次细节模型数据存储在文件中;原始点云数据再次打开时,直接从文件读取八叉树索引及其对应的层次细节模型数据。
进一步的,合并可供渲染的点云模型到场景,包括:可供渲染的点云模型可被多个视图所共享,同一可供渲染的点云模型可以被合并到多个场景中。
进一步的,将当前活动视图作为主视图以较高帧率进行渲染,其他视图则以较低帧率进行渲染。
进一步的,删除过期的层次细节模型数据,包括:设置过期时间阈值ΔT2,若访问时间戳与当前时间的差值大于ΔT2,并且引用计数等于0,则将数据从共享队列中删除,释放空间;反之,则暂时不删除该数据。
由上述技术方案可知,本发明的有益技术效果如下:
1.使用基于八叉树层次结构叠加型层次细节模型的生成方法,避免了点云数据的重复存储,节约了存储空间。
2.多视图共享层次细节模型数据,避免了多视图点云渲染时同一数据的多次拷贝,减少了内存空间的占有,提高了点云数据多视图渲染效率。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单介绍。在所有附图中,类似的元件或部分一般由类似的附图标记标识。附图中,各元件或部分并不一定按照实际的比例绘制。
图1为本发明实施例多视图渲染方法流程图;
图2为本发明实施例多视图层次细节模型共享示意图;
图3为本发明实施例多视图渲染的多线程加载流程;
图4为本发明实施例海量点云数据的多视图可视化效果示意图。
具体实施方式
下面将结合附图对本发明技术方案的实施例进行详细的描述。以下实施例仅用于更加清楚地说明本发明的技术方案,因此只作为示例,而不能以此来限制本发明的保护范围。
需要注意的是,除非另有说明,本申请使用的技术术语或者科学术语应当为本发明所属领域技术人员所理解的通常意义。
实施例1
本实施例提供了一种海量点云数据多视图渲染方法,如图1所示,包括以下步骤:
S1、对原始点云数据进行多尺度自适应分块和八叉树索引构建
S1-1、根据原始点云数据计算包围盒
具体的,计算原始点云数据的坐标最大值(Xmax,Ymax,Zmax)和坐标最小值(Xmin,Ymin,Zmin)。Xmax和Xmin的计算方法为:
Figure BDA0003474079550000051
其中,n为点云的个数。按与计算Xmax和Xmin相同的方法,计算Ymax、Ymin、Zmax和Zmin的值,得到包围盒Box(Xmin,Ymin,Zmin,Xmax,Ymax,Zmax)。
S1-2、根据包围盒对原始点云数据进行多尺度自适应分块,得到多个分块点云
原始点云数据具有数据量大、密度分布不均的特点,对原始点云数据进行分块处理将提高点云数据的处理效率,降低计算机内存使用率。在实际的应用过程中,可根据划分块的尺寸及当前分块点数按照由粗到细的原则进行划分。
在具体的实施方式中,设定分块最大尺寸S,分块中最大点云数量N;设定偏移原点为p0(x0,y0,z0),优选的,通常取x0=Xmin,y0=Ymin,z0=Zmin,即包围盒在X、Y、Z方向上的坐标最小值。首先,以初始尺寸S对原始点云数据进行分块,任意点云pi(xi,yi,zi)对应分块最小角点坐标pci(xci,yci,zci)计算公式为:
Figure BDA0003474079550000052
其中floor(x)含义是向下取整。
将具有相同最小角点坐标的点云作为同一个分块Block。若Block中的点云数量小于或等于N,则无需对该分块再进行划分;若Block中的点云数量大于N,则按照S/2的分块尺寸将当前块继续划分为多个子块subBlock,直到所有subBlock中的点云数量都不超过N。
上述多尺度自适应的分块策略,可以避免因点云数据密度不均而引起的大量空点云块的存在。最大块尺寸及块点数可根据实际情况而定,本发明实施例对此不作具体限定。
S1-3、对分块点云构建八叉树索引
设定八叉树划分层级Level及八叉树节点中包含的最大点数Count,对分块点云建立八叉树索引。具体的,以当前分块点云的几何中心点作为八叉树的根节点,沿着X,Y和Z三个方向对当前分块点云进行划分,获得八个子节点;若某个子节点中点云数量小于Count,则停止划分;反之,则以该子节点为根节点继续进行划分,划分结束的条件为总层级超过Level或者八叉树节点中包含的点数小于Count。将所有的分块点云保存在叶子节点中。
在构建的八叉树索引中包括了叶子节点和非叶子节点,其中未被划分的节点称为叶子节点,被划分的节点称为非叶子节点。
S2、根据视口范围对各个视图分别筛选需要加载的八叉树,并确定八叉树加载的层次细节模型层级
S2-1、八叉树筛选
八叉树筛选的过程是判断八叉树是否在当前视图的视锥体中的过程。对于点云数据的多视图渲染而言,及时释放未在视锥体内的点云数据是提高渲染效率的关键。
八叉树筛选的步骤为:根据当前视图的投影矩阵及视点位置构建当前的视锥体;求取视锥体外包围盒,并与八叉树包围盒进行初步的位置判断,若八叉树包围盒与视锥体外包围盒不相交且八叉树包围盒在视锥体包围盒外部,则说明八叉树不在当前视野范围内;反之,则对视锥体与八叉树进行进一步的相交、包含判断。需要加载的八叉树是位于视锥体内的,以isInCamera标签来标记八叉树是否在视锥体内,在视锥体内的八叉树的isInCamera标签标记为true,否则标记为false。
本实施例中,为了提高多视图点云数据渲染效率,每个视图开启一个单独的线程,用于八叉树的筛选。
S2-2、确定八叉树应加载的层次细节模型层级
为了进一步提高加载效率,基于八叉树索引结构,在本实施例中设计一种叠加型的点云层次细节模型(LOD模型)。示例性的,以八叉树层数Level作为LOD的层数,从叶节点开始,逐层以一定的采样率进行点云采样,直到达到八叉树根节点,最终八叉树的各节点都包括了一定数量的点云数据,且各个节点的点云数量之和为当前块的点云数量。将八叉树每一层的点云作为一个单独的LOD模型,如此便得到Level层LOD模型。每一层的采样率可根据实际情况而定,不做具体限定。
优选的,在具体的实施方式中,点云块的八叉树索引结构及生成的LOD数据将存储在文件中,原始点云数据再次打开时,可直接从该文件读取八叉树索引结构及其对应的LOD数据,避免八叉树索引结构及LOD的重新生成,能够实现原始点云数据的秒开。
对于isInCamera标签为true的八叉树,根据当前视点到八叉树的距离,确定当前八叉树应加载到的LOD层级,按照预设的加载范围逐层向LOD加载线程发送LOD数据加载请求LodRequest。
例如,当前八叉树层级为6层,设顶层为第一层,预设的视点到八叉树距离与加载层级的对应关系如下:
视点到八叉树的距离(单位:米) 加载的层级
[1000,∞) 1
[800,1000) 1、2
[600,800) 1、2、3
[400,600) 1、2、3、4
[200,400) 1、2、3、4、5
[0,200) 1、2、3、4、5、6
若当前视点到八叉树距离为300m,则应加载的层级为1、2、3、4、5,依次判断该层级的LOD数据是否已经加载,若没有加载,则向LOD加载线程依次发送LOD数据加载请求。
在具体的实施方式中,LodRequest结构定义为(datasetID,octreeID,level,distance,timestampRequest,refCount,loadedModel,visitorTime),其中,datasetID为点云数据的编号,用于区分多个点云文件;octreeID表示八叉树的编号,level表示LOD的层级,distance表示该LOD层级中心到视图视点的距离,timestampRequest表示发送该条请求时的时间戳,loadedModel表示LOD数据加载之后可供渲染的点云模型;refCount为引用计数,表示loadedModel被视图引用的次数;visitorTime表示loadedModel被合并到视图中后,场景遍历loadedModel时的时间戳。
S3、层次细节模型加载线程加载层次细节模型数据,得到可供渲染的点云模型,将可供渲染的点云模型放入模型共享队列
LOD加载线程从LOD数据请求队列LodRequestList中按照优先级获取一条记录,进行LOD数据的加载,加载完成得到的loadedModel数据存入模型共享队列LODShareList。
LOD数据请求的优先级可根据请求的时间timestampRequest或者当前视点到Lod层级的距离distance来确定,为了避免LOD加载线程加载已经过期的LOD数据,设置过期时间阈值ΔT1,当LOD请求的时间戳timestampRequest与当前系统的时间currentTime差值大于过期阈值ΔT1时,认为该请求已过期,从LOD数据请求队列LodRequestList中直接删除该请求;反之,则加载LOD数据,将加载成功的点云数据存储在loadedModel可供渲染的点云模型中。过期时间的判断表示如下:
Figure BDA0003474079550000081
按上述方式加载的层次细节模型数据有多个,得到的可供渲染的点云模型有多个,将可供渲染的点云模型放入模型共享队列中,供各个视图在渲染时直接调用。
S4、各个视图根据自身需要加载的八叉树,从模型共享队列中查找视图范围内的可供渲染的点云模型,合并可供渲染的点云模型到场景,同时移除过期的可供渲染的点云模型
传统的点云数据多视图渲染中,每个视图对点云数据进行单独的加载,同一点云数据可能在内存中被进行了多次拷贝,造成了很大的数据冗余,占用了较大的内存存储空间。
在本实施例中,每个视图根据步骤S2中筛选结果得出自身需要加载的八叉树,然后从模型共享队列LODShareList中查找该视图范围内的loadedModel数据,并合并loadedModel数据到该视图的场景中。合并时即将loadedModel数据作为子节点添加到原场景的根节点下。LODShareList中的loadedModel可被多个视图所共享,同一loadedModel数据可以被合并到多个场景中,减少了LOD数据的内存拷贝,节约了内存空间。
具体的,使用引用计数refCount表示loadedModel数据共享的次数,当loadedModel数据加载到某个视图中时,refCount加1,当loadedModel数据从某个视图中删除时,refCount减1,当refCount=0时,表示该loadedModel数据没有被任何视图共享,此时loadedModel数据才被允许从共享队列LODShareList中删除。
使用visitorTime表示loadedModel数据的访问时间戳,当loadedModel数据被加载到某一视图中后,视图在进行帧渲染时,对加载的loadedModel数据进行遍历,使用visitorTime记录遍历该loadedModel数据的时间。若该loadedModel数据被加载在某一场景中,则visitorTime会随着帧渲染不断的更新,若该loadedModel数据没有被加载到任何场景,则visitorTime记录了该loadedModel数据最后一次遍历的时间。
此外,多视图渲染时,各个视图都以较高的帧率进行渲染会影响渲染的效率。本实施例中,优选的,将当前活动视图作为主视图以较高帧率进行渲染,其他视图则以较低帧率进行渲染,可以进一步提高多视图渲染效率。较高帧率及较低帧率可根据实际情况设置,本实施例不做具体限定。
视图中若有多个点云文件存在时,可按照文件进行场景模型的组织,示例性的,每个视图有根节点root,root节点下可挂接文件节点DS_ROOT,DS_ROOT下再挂接文件对应的点云LOD模型DS_LOD,多视图共享节点的组织方式如图2所示。
S5、删除过期的可供渲染的点云模型
及时的将过期的loadedModel数据从共享队列LODShareList中删除,是提高点云数据多视图渲染效率的关键。
在本实施例中,以visitorTime和refCount来判断loadedModel数据是否被允许从共享队列LODShareList中删除,具体为:设置过期时间阈值ΔT2,若visitorTime与当前时间currentTime的差值大于ΔT2,并且refCount=0,则将loadedModel数据从共享队列中删除,释放空间;反之,则暂时不删除该loadedModel数据。具体表示为:
Figure BDA0003474079550000101
本实施例中,设置过期时间阈值ΔT2的目的是为了防止loadedModel数据被立即释放,实际应用过程中,根据用户的操作习惯,在loadedModel数据被视图移除后,短时间内可能又需要被立即加载,此时只需要从共享节点列表LODShareList中再次合并该loadedModel数据到视图中即可,而不需要数据的重新加载。过期时间ΔT2的值可根据实际情况设定,本实施例不做具体限定。图3为多视图渲染的多线程加载流程;图4为某一海量点云数据的多视图可视化效果示意图。
通过采用本实施例的技术方案,使用基于八叉树层次结构叠加型层次细节模型的生成方法,避免了点云数据的重复存储,节约了存储空间;多视图共享层次细节模型数据,避免了多视图点云渲染时同一数据的多次拷贝,减少了内存空间的占有,提高了点云数据多视图渲染效率。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。

Claims (10)

1.一种海量点云数据多视图渲染方法,其特征在于,包括以下步骤:
对原始点云数据进行多尺度自适应分块和八叉树索引构建;
根据视口范围对各个视图分别筛选需要加载的八叉树,并确定八叉树加载的层次细节模型层级;
层次细节模型加载线程加载层次细节模型数据,得到可供渲染的点云模型,将可供渲染的点云模型放入模型共享队列;
各个视图根据自身需要加载的八叉树,从模型共享队列中查找视图范围内的可供渲染的点云模型,合并可供渲染的点云模型到场景,同时移除过期的可供渲染的点云模型;
删除过期的可供渲染的点云模型。
2.根据权利要求1所述的海量点云数据多视图渲染方法,其特征在于:对原始点云数据进行多尺度自适应分块和八叉树索引构建,包括:
根据原始点云数据计算包围盒;
根据包围盒对原始点云数据进行多尺度自适应分块,得到分块点云;
对分块点云构建八叉树索引。
3.根据权利要求2所述的海量点云数据多视图渲染方法,其特征在于,所述包围盒根据原始点云数据的坐标最大值和坐标最小值进行计算。
4.根据权利要求2所述的海量点云数据多视图渲染方法,其特征在于,根据包围盒对原始点云数据进行多尺度自适应分块,包括:
将具有相同最小角点坐标的点云作为同一个分块;若同一个分块中的点云数量小于或等于预设的最大点云数量,停止分块;若同一个分块中的点云数量大于预设的最大点云数量,则按照最大分块尺寸的一半将当前块继续划分为多个子块,直到所有子块中的点云数量都不超过预设的最大点云数量。
5.根据权利要求1所述的海量点云数据多视图渲染方法,其特征在于,八叉树索引构建,包括:
设定八叉树划分层级及八叉树节点中包含的最大点数;
以当前分块点云的几何中心点作为八叉树的根节点,沿着X,Y和Z三个方向对当前分块点云进行划分,获得八个子节点;
若某个子节点中点云数量小于所述最大点数,则停止划分;
反之,则以该子节点为根节点继续进行划分,划分结束的条件为总层级超过所述划分层级或者八叉树节点中包含的点数小于所述最大点数;
将所有的分块点云保存在叶子节点中。
6.根据权利要求1所述的海量点云数据多视图渲染方法,其特征在于:根据视口范围对各个视图分别筛选需要加载的八叉树,包括:
根据当前视图的投影矩阵及视点位置构建当前的视锥体;
求取视锥体外包围盒,并与八叉树包围盒进行初步的位置判断:
若八叉树包围盒与视锥体外包围盒不相交且八叉树包围盒在视锥体包围盒外部,则说明八叉树不在当前视野范围内;反之,则对视锥体与八叉树进行进一步的相交、包含判断;
通过设置标签来标记八叉树是否在视锥体内。
7.根据权利要求1所述的海量点云数据多视图渲染方法,其特征在于:八叉树索引、生成的层次细节模型数据存储在文件中;原始点云数据再次打开时,直接从文件读取八叉树索引及其对应的层次细节模型数据。
8.根据权利要求1所述的海量点云数据多视图渲染方法,其特征在于:合并可供渲染的点云模型到场景,包括:可供渲染的点云模型可被多个视图所共享,同一可供渲染的点云模型可以被合并到多个场景中。
9.根据权利要求1所述的海量点云数据多视图渲染方法,其特征在于:将当前活动视图作为主视图以较高帧率进行渲染,其他视图则以较低帧率进行渲染。
10.根据权利要求1所述的海量点云数据多视图渲染方法,其特征在于:删除过期的层次细节模型数据,包括:设置过期时间阈值ΔT2,若访问时间戳与当前时间的差值大于ΔT2,并且引用计数等于0,则将数据从共享队列中删除,释放空间;反之,则暂时不删除该数据。
CN202210050524.6A 2022-01-17 2022-01-17 一种海量点云数据多视图渲染方法 Active CN114387375B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210050524.6A CN114387375B (zh) 2022-01-17 2022-01-17 一种海量点云数据多视图渲染方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210050524.6A CN114387375B (zh) 2022-01-17 2022-01-17 一种海量点云数据多视图渲染方法

Publications (2)

Publication Number Publication Date
CN114387375A true CN114387375A (zh) 2022-04-22
CN114387375B CN114387375B (zh) 2023-05-16

Family

ID=81201662

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210050524.6A Active CN114387375B (zh) 2022-01-17 2022-01-17 一种海量点云数据多视图渲染方法

Country Status (1)

Country Link
CN (1) CN114387375B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115170716A (zh) * 2022-08-01 2022-10-11 中国地质大学(武汉) 一种省域级多尺度三维地质体可视化渲染方法及系统
CN116109470A (zh) * 2023-04-13 2023-05-12 深圳市其域创新科技有限公司 实时点云数据渲染方法、装置、终端及存储介质
CN116109752A (zh) * 2023-04-12 2023-05-12 深圳市其域创新科技有限公司 一种点云实时采集结构化及渲染方法
CN116570925A (zh) * 2023-05-19 2023-08-11 韶关学院 一种基于ar开发的资源管理方法
CN118037924A (zh) * 2024-04-10 2024-05-14 深圳市其域创新科技有限公司 基于高斯点云的渲染方法、装置、计算机设备和存储介质

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080238919A1 (en) * 2007-03-27 2008-10-02 Utah State University System and method for rendering of texel imagery
US20140198097A1 (en) * 2013-01-16 2014-07-17 Microsoft Corporation Continuous and dynamic level of detail for efficient point cloud object rendering
US20150170396A1 (en) * 2011-09-14 2015-06-18 Google Inc. Prioritizing Node Requests Based On Tile Distance To Reduce Perceptual Scene Time
US20160275719A1 (en) * 2015-03-19 2016-09-22 Intergraph Corporation System and method for fast optimization of point cloud data
US20180081034A1 (en) * 2016-09-22 2018-03-22 Beijing Greenvalley Technology Co., Ltd. Method and device for constructing spatial index of massive point cloud data
EP3429208A1 (en) * 2017-07-13 2019-01-16 Thomson Licensing A method and apparatus for encoding/decoding a colored point cloud representing the geometry and colors of a 3d object
CN111161411A (zh) * 2020-04-08 2020-05-15 速度时空信息科技股份有限公司 一种基于八叉树的三维建筑物模型lod方法
CN111684808A (zh) * 2019-05-31 2020-09-18 深圳市大疆创新科技有限公司 点云数据的编码方法、编码装置、解码方法与解码装置
CN112308974A (zh) * 2020-10-30 2021-02-02 南京航空航天大学 一种改进八叉树和自适应读取的大规模点云可视化方法
CN112509118A (zh) * 2020-12-02 2021-03-16 南京航空航天大学 一种可预加载节点和自适应填充的大规模点云可视化方法
CN112802179A (zh) * 2021-01-18 2021-05-14 南京航空航天大学 一种基于法向的大规模点云可视化方法
CN113544747A (zh) * 2019-07-12 2021-10-22 腾讯美国有限责任公司 用于点云编解码的几何合并模式的方法和装置

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080238919A1 (en) * 2007-03-27 2008-10-02 Utah State University System and method for rendering of texel imagery
US20150170396A1 (en) * 2011-09-14 2015-06-18 Google Inc. Prioritizing Node Requests Based On Tile Distance To Reduce Perceptual Scene Time
US20140198097A1 (en) * 2013-01-16 2014-07-17 Microsoft Corporation Continuous and dynamic level of detail for efficient point cloud object rendering
US20160275719A1 (en) * 2015-03-19 2016-09-22 Intergraph Corporation System and method for fast optimization of point cloud data
US20180081034A1 (en) * 2016-09-22 2018-03-22 Beijing Greenvalley Technology Co., Ltd. Method and device for constructing spatial index of massive point cloud data
EP3429208A1 (en) * 2017-07-13 2019-01-16 Thomson Licensing A method and apparatus for encoding/decoding a colored point cloud representing the geometry and colors of a 3d object
CN111684808A (zh) * 2019-05-31 2020-09-18 深圳市大疆创新科技有限公司 点云数据的编码方法、编码装置、解码方法与解码装置
CN113544747A (zh) * 2019-07-12 2021-10-22 腾讯美国有限责任公司 用于点云编解码的几何合并模式的方法和装置
CN111161411A (zh) * 2020-04-08 2020-05-15 速度时空信息科技股份有限公司 一种基于八叉树的三维建筑物模型lod方法
CN112308974A (zh) * 2020-10-30 2021-02-02 南京航空航天大学 一种改进八叉树和自适应读取的大规模点云可视化方法
CN112509118A (zh) * 2020-12-02 2021-03-16 南京航空航天大学 一种可预加载节点和自适应填充的大规模点云可视化方法
CN112802179A (zh) * 2021-01-18 2021-05-14 南京航空航天大学 一种基于法向的大规模点云可视化方法

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115170716A (zh) * 2022-08-01 2022-10-11 中国地质大学(武汉) 一种省域级多尺度三维地质体可视化渲染方法及系统
CN116109752A (zh) * 2023-04-12 2023-05-12 深圳市其域创新科技有限公司 一种点云实时采集结构化及渲染方法
CN116109752B (zh) * 2023-04-12 2023-06-20 深圳市其域创新科技有限公司 一种点云实时采集结构化及渲染方法
CN116109470A (zh) * 2023-04-13 2023-05-12 深圳市其域创新科技有限公司 实时点云数据渲染方法、装置、终端及存储介质
CN116109470B (zh) * 2023-04-13 2023-06-20 深圳市其域创新科技有限公司 实时点云数据渲染方法、装置、终端及存储介质
CN116570925A (zh) * 2023-05-19 2023-08-11 韶关学院 一种基于ar开发的资源管理方法
CN118037924A (zh) * 2024-04-10 2024-05-14 深圳市其域创新科技有限公司 基于高斯点云的渲染方法、装置、计算机设备和存储介质

Also Published As

Publication number Publication date
CN114387375B (zh) 2023-05-16

Similar Documents

Publication Publication Date Title
CN114387375B (zh) 一种海量点云数据多视图渲染方法
Schütz et al. Fast Out‐of‐Core Octree Generation for Massive Point Clouds
CN108664619B (zh) 一种类瓦片技术的海量线划地形图本原存储与调度方法
CN110992469B (zh) 海量三维模型数据的可视化方法及系统
CN110276820B (zh) 基于lod组织与调度方法的gis模型优化方法及系统
CN111179394A (zh) 点云场景渲染方法、装置和设备
US11532123B2 (en) Method for visualizing large-scale point cloud based on normal
CN103942306A (zh) 三维城市模型自适应调度方法
CN111552555A (zh) 一种点云的可视化方法和设备
CN113870402A (zh) 一种基于八叉树索引的海量点云分层实时渲染方法
CN113468286A (zh) 一种基于三角面片个数划分的三维金字塔构建方法
CN107562367A (zh) 基于软件化存储系统读写数据的方法以及装置
CN112465949A (zh) 基于嵌套八叉树的大规模点云数据组织方法
WO2022188453A1 (zh) 在线即分析影像与格网立方体数据存储管理方法及系统
CN116467540B (zh) 一种基于HBase的海量空间数据快速可视化方法
de Berg et al. Star-quadtrees and guard-quadtrees: I/O-efficient indexes for fat triangulations and low-density planar subdivisions
CN114926590A (zh) 一种海量点云数据可视化方法
CN114168697A (zh) 一种瓦片数据发布方法及装置
CN115905586A (zh) 一种电力大容量点云存储方法以及渲染方法
Tian et al. Roaming of large urban scenes based on Unity 3D
CN103927396B (zh) 利用辅助数据在三维渲染中获得三维空间信息的查找方法
CN111752994A (zh) 游戏数字资产管理方法、系统、存储介质以及计算设备
CN115239873B (zh) 基于深度图的建筑物的细粒度化分划与场景图组织方法
CN112446959B (zh) 一种倾斜摄影模型优化方法
Ganovelli et al. OCME: out-of-core mesh editing made practical

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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20240306

Address after: No. 6 Qingzhu East Road, Dazhulin Street, Yubei District, Chongqing, 400000

Patentee after: Chongqing Institute of Surveying and Mapping Science and Technology (Chongqing Map Compilation Center)

Country or region after: China

Address before: 401121 No. 6, Qingzhu East Road, Dazhulin, Yubei District, Chongqing

Patentee before: Chongqing Survey Institute (Chongqing map compilation Center)

Country or region before: China