一种点云数据渲染展示方法及系统与流程

    专利2022-07-08  142


    本发明属于点云数据可视化处理领域,具体涉及一种点云数据渲染展示方法及系统。



    背景技术:

    激光扫描系统能够直接获取被测目标表面的三维空间坐标,具有采样密度高、点云分布密集等特点,正逐渐成为三维空间信息快速获取的主要手段之一,被广泛应用于文物保护、三维重建、数字地面模型生产、城市规划等领域。但随着激光扫描系统设备精度的提高,扫描系统获得的点云数据也成几何式上升,点云数据的单体文件大小一般在gb级。

    目前存在一些点云数据的处理方法,通过这些方法可以实现对点云数据的可视化,但是由于点云数据的运算量过于海量,可以会存在无法被全部显示到内存中或者会渲染较慢的问题。此外,现有的渲染方式中并没有针对不同的使用需求而采用不同的精度进行渲染,如果在低需求状态时,提供给高精度的渲染,则会造成运算空间极大的浪费,同时也难以实现更多线程的同步渲染。



    技术实现要素:

    本发明实施例所要解决的技术问题在于,提供一种可以有效提高渲染速度的点云数据渲染展示方法及系统,其中,方法包括:

    步骤s1,获取目标抽稀级别;

    步骤s2,依据所述目标抽稀级别对点云数据进行抽稀,以获得待渲染点云数据;

    步骤s3,依据八叉树结构原则对所述待测点云数据进行划分,形成多个点云文件;

    步骤s4,开启一个主线程和多个子线程对多个所述点云文件渲染并显示。

    进一步地,所述步骤s1包括:

    步骤s11,建立抽稀等级表,所述抽稀等级表包括多个权限等级和多个抽稀级别,多个所述权限等级和多个所述抽稀级别一一对应设置;

    步骤s12,构建访问权限数据库,所述访问权限数据库包括多个权限秘钥,每个所述权限秘钥皆对应一个所述权限等级;

    步骤s13,获取访问秘钥,并扫描是否有与所述访问秘钥相同的所述权限秘钥,若有,则寻找到与该所述权限秘钥对应的所述权限等级,并将该权限等级对应的所述抽稀级别标记为目标抽稀级别。

    进一步地,所述步骤s4包括:

    步骤s41,基于处理器性能确定能开启线程的数量,其中一个线程用作所述主线程,其它线程皆用作所述子线程;

    步骤s42,利用多个所述子线程对多个所述点云文件由大至小进行渲染。

    进一步地,所述步骤s42包括:

    步骤s421,当所述子线程数量大于所述点云文件数量时,每个所述点云文件皆采用一个所述子线程进行渲染;

    步骤s422,当所述子线程数量小于所述点云文件数量时,多个所述点云文件由大至小进行渲染。

    进一步地,所述步骤s42还包括:确定待检测点云数据的视觉中心,优先对以视觉中心为中点半径为预设的视野长度的当前视野区域中的所述点云文件进行渲染。

    进一步地,所述步骤s42还包括:确定待检测点云数据的视觉方向,优先对延所述视觉方向表层的所述点云文件进行渲染。

    一种点云数据渲染展示系统,包括:

    目标抽稀级别获取单元,用于获取目标抽稀级别;

    点云数据抽稀单元,用于依据所述目标抽稀级别对点云数据进行抽稀,以获得待渲染点云数据;

    点云数据划分单元,用于依据八叉树结构原则对所述待测点云数据进行划分,形成多个点云文件;

    点云文件渲染单元,用于开启一个主线程和多个子线程对多个所述点云文件渲染并显示。

    进一步地,所述目标抽稀级别获取单元包括:

    抽稀等级表子单元,用于建立抽稀等级表,所述抽稀等级表包括多个权限等级和多个抽稀级别,多个所述权限等级和多个所述抽稀级别一一对应设置;

    访问权限数据库子单元,用于构建访问权限数据库,所述访问权限数据库包括多个权限秘钥,每个所述权限秘钥皆对应一个所述权限等级;

    目标抽稀级别标记子单元,用于获取访问秘钥,并扫描是否有与所述访问秘钥相同的所述权限秘钥,若有,则寻找到与该所述权限秘钥对应的所述权限等级,并将该权限等级对应的所述抽稀级别标记为目标抽稀级别。

    进一步地,所述点云文件渲染单元包括:

    线程开启子单元,用于基于处理器性能确定能开启线程的数量,其中一个线程用作所述主线程,其它线程皆用作所述子线程;

    渲染子单元,用于利用多个所述子线程对多个所述点云文件由大至小进行渲染。

    进一步地,所述渲染子单元具体用于:当所述子线程数量大于所述点云文件数量时,每个所述点云文件皆采用一个所述子线程进行渲染;当所述子线程数量小于所述点云文件数量时,多个所述点云文件由大至小进行渲染。

    实施本发明实施例,具有如下有益效果:通过依据目标抽稀级别对点云数据进行抽稀,使得点云数据的点云大量减少,从而有效的降低后期渲染时的运算量,且有效的避免了在低需求时,也进行高效渲染的情况,避免了运算资源的浪费。依照八叉树结构对抽希之后的待检测点云数据进行划分,可获得更为合理的结构和空间关系,进而便于进一步提高渲染的速度。此外,通过采用多线程同时渲染的方式,可以进一步提高渲染的效率。本发明实施例有效的解决了传统web渲染速度慢的问题。

    附图说明

    为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

    图1为本发明实施例一的点云数据渲染展示方法的流程示意图。

    具体实施方式

    以下各实施例的说明是参考附图,用以示例本发明可以用以实施的特定实施例。

    请参照图1所示,本发明实施例一提供一种点云数据渲染展示方法,包括步骤s1-步骤s4。

    步骤s1,获取目标抽稀级别。

    具体地,在实际应用中,对于同一个需要渲染的模型,因为使用人员的不一致或使用环境的不一致可能会对抽稀的要求出现较大的区别。就使用人员进行区分而言,现场的销售人员或者一般用户通常只需要对一个模型进行不太细致的观看,因此并不需要进行高精度的渲染,而对于一个研发工程师则需要对整个模型有一个高精度的了解,以便进行一些较为复杂的数据处理,此时,使用人员身份信息便可以作为访问密钥。就使用环境进行区分而言,研发中心或设计中心使用则需要采用高精度的渲染,以最大可能的保留细节,而对于业务部门而言,则只需进行低精度的渲染即可满足使用需求。此时可以直接使用ip地址作为访问密钥即可。而实际应用中,抽稀等级可能会因为需求过多而出现众多的级别,此时通过选定一个抽稀级别作为目标抽稀级别即可。

    在一个实施例中,目标抽稀级别的获取步骤包括步骤s11-步骤s13。

    步骤s11,建立抽稀等级表,抽稀等级表包括多个权限等级和多个抽稀级别,多个权限等级和多个抽稀级别一一对应设置;

    步骤s12,构建访问权限数据库,访问权限数据库包括多个权限秘钥,每个权限秘钥皆对应一个权限等级;

    步骤s13,获取访问秘钥,并扫描是否有与访问秘钥相同的权限秘钥,若有,则寻找到与该权限秘钥对应的权限等级,并将该权限等级对应的抽稀级别标记为目标抽稀级别。

    建立抽稀等级表可以便于对抽稀等级进行管理,也便于后续获取目标抽稀等。抽稀等级表中包含了具有对应关系的多个权限等级和多个对应的抽稀等级,这里进行简单举例:权限等级可以设置为普通用户、高级用户、工程设计人员,他们对应的抽稀等级便可以设置为最大抽稀、中度抽稀、不抽稀。需要获取相应的抽稀等级便需要通过权限秘钥进行获取,这里构建了访问权限数据库对权限秘钥进行管理,权限秘钥可以理解为是在服务器中建立的使用账户,这些账户由于对应的权限等级可能是普通用户、高级用户或工程设计人员,因此会具有一个对应的抽稀等级,当使用者需要在web端进行点云数据渲染时,需要先输入访问秘钥,如果访问秘钥能够匹配到相应的权限秘钥,则可以获取对应的权限等级以及抽稀等级,这个抽稀等级便会作为目标抽稀等级,进而对点云数据进行相应程度的抽稀。

    步骤s2,依据目标抽稀级别对点云数据进行抽稀,以获得待渲染点云数据。

    具体地,对原始的点云数据进行抽稀,可以极大的降低点云数据的大小。抽稀的方式有很多,最简单的便是直接将整个点云数据划分为多个单位体积,直接在每个单位体积中按比例抽取即可。此外需要说明,抽稀的最大值不能影响最终渲染的整体效果。

    步骤s3,依据八叉树结构原则对待测点云数据进行划分,形成多个点云文件。

    八叉树结构是一种描述三维空间的树状结构,八叉树结构的每个节点表示一个正方体的体积元素,每个节点有八个子节点,将八个子节点所表示的体积元素加在一起就等于父节点的体积。本发明实施例中将点云数据依据八叉树结构将进行划分,便可以得到多个点云文件,进而可以便于后续开启多线程渲染。

    步骤s4,开启一个主线程和多个子线程对多个点云文件渲染并显示。

    为了完成对点云数据的渲染,这里设置了一个主线程和多个子线程,主线程引导整体的渲染流程,多个子线程皆用于对单个点云文件进行渲染,这种并行处理的方式可以极大的提高渲染的效率。

    在一个实施例中,渲染的步骤包括步骤s41-步骤s42。

    步骤s41,基于处理器性能确定能开启线程的数量,其中一个线程用作主线程,其它线程皆用作子线程;

    步骤s42,利用多个子线程对多个点云文件由大至小进行渲染。

    开启线程的数量不是能够随便设置的,需要基于处理器的性能进行设置,以六核十二线程的处理器为例,则最多开启十二个线程,而实际使用中,可能因为还有其他程序需要运行而不能将所有线程都完全用于点云数据渲染。在一些实施例中,会依据点云数据的大小由大到小进行渲染,当然,也可以利用人为设置的其他空间索引关系进行依次渲染。

    进一步地,步骤s42包括步骤s421-步骤s422。

    步骤s421,当子线程数量大于点云文件数量时,每个点云文件皆采用一个子线程进行渲染;

    步骤s422,当子线程数量小于点云文件数量时,多个点云文件由大至小进行渲染。

    在点云文件的数量少于能开启的子线程数时,此时处理器完全具有足够的运算能力同时对所有的点云文件进行渲染,因此可以直接利用多个子线程直接一对一的渲染点云文件即可。而当点云文件的数量大于子线程数量时,此时只能对多个点云数据进行分别渲染,在一些实施例中,是遵守从大到小的原则进行渲染,也可以使用其它的人为制定的原则进行渲染。

    进一步地,步骤s42之后还可以包括:确定待检测点云数据的视觉中心,优先对以视觉中心为中点半径为预设的视野长度的当前视野区域中的点云文件进行渲染。

    在web进行展示时,通常并不会直接展示整个点云数据对应的模型,这样一方面会导致渲染的时间长,其次也只能在整个模型渲染结束后才能查看到整体的渲染效果。这里通过设置一个视觉中心和视野长度来有效的规避这一问题,在开始渲染时,对以视觉中心为中心视野长度为半径的视野区域先进行渲染,这是用户在web中查看时最先能够看到的区域,因此只需要先渲染好这部分点云数据,便能保证用户具有良好的初期体验,在用户查看这部分渲染结果的同时,仍然可以对其他区域的点云数据进行渲染。当用户改变视觉中心的位置时,则会以新的视觉中心为中心重新开始渲染。对于已渲染的点云文件会进行标记,防止出现重复渲染。

    进一步地,步骤s42之后还可以包括:确定待检测点云数据的视觉方向,优先对延视觉方向表层的点云文件进行渲染。

    在web进行展示时,仅仅之一视觉中心作为初始进行渲染也会出现问题,如果二维图像,因为没有空间层次感,则不需要进行考虑分层,因为渲染的点云数据都可以直接查看到,但是对三维空间图像,则可能出现最先渲染的点云文件对应的空间并不是位于最上层,此时渲染展示的便会较差。因此,这里提出了视觉方向的措施,将三维空间图像中的点云文件假设是一层层叠加的,这里会延视觉方向逐层对点云文件进行渲染。这里举一个例子说明:当需要对一个房子进行渲染时,我们如果选择俯视的视觉方向,则会优先从房顶进行点云文件的渲染。

    通过上述说明可知,通过依据目标抽稀级别对点云数据进行抽稀,使得点云数据的点云大量减少,从而有效的降低后期渲染时的运算量,且有效的避免了在低需求时,也进行高效渲染的情况,避免了运算资源的浪费。依照八叉树结构对抽希之后的待检测点云数据进行划分,可获得更为合理的结构和空间关系,进而便于进一步提高渲染的速度。此外,通过采用多线程同时渲染的方式,可以进一步提高渲染的效率。本发明实施例有效的解决了传统web渲染速度慢的问题。

    相应于本发明实施例一提供的点云数据渲染展示方法,本发明实施例二还提供一种点云数据渲染展示系统,包括:

    目标抽稀级别获取单元,用于获取目标抽稀级别;

    点云数据抽稀单元,用于依据所述目标抽稀级别对点云数据进行抽稀,以获得待渲染点云数据;

    点云数据划分单元,用于依据八叉树结构原则对所述待测点云数据进行划分,形成多个点云文件;

    点云文件渲染单元,用于开启一个主线程和多个子线程对多个所述点云文件渲染并显示。

    进一步地,所述目标抽稀级别获取单元包括:

    抽稀等级表子单元,用于建立抽稀等级表,所述抽稀等级表包括多个权限等级和多个抽稀级别,多个所述权限等级和多个所述抽稀级别一一对应设置;

    访问权限数据库子单元,用于构建访问权限数据库,所述访问权限数据库包括多个权限秘钥,每个所述权限秘钥皆对应一个所述权限等级;

    目标抽稀级别标记子单元,用于获取访问秘钥,并扫描是否有与所述访问秘钥相同的所述权限秘钥,若有,则寻找到与该所述权限秘钥对应的所述权限等级,并将该权限等级对应的所述抽稀级别标记为目标抽稀级别。

    进一步地,所述点云文件渲染单元包括:

    线程开启子单元,用于基于处理器性能确定能开启线程的数量,其中一个线程用作所述主线程,其它线程皆用作所述子线程;

    渲染子单元,用于利用多个所述子线程对多个所述点云文件由大至小进行渲染。

    进一步地,所述渲染子单元具体用于:当所述子线程数量大于所述点云文件数量时,每个所述点云文件皆采用一个所述子线程进行渲染;当所述子线程数量小于所述点云文件数量时,多个所述点云文件由大至小进行渲染。

    有关本实施例的工作原理以及所带来的有益效果请参照本发明实施例一的说明,此处不再赘述。

    以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。


    技术特征:

    1.一种点云数据渲染展示方法,其特征在于,包括以下步骤:

    步骤s1,获取目标抽稀级别;

    步骤s2,依据所述目标抽稀级别对点云数据进行抽稀,以获得待渲染点云数据;

    步骤s3,依据八叉树结构原则对所述待测点云数据进行划分,形成多个点云文件;

    步骤s4,开启一个主线程和多个子线程对多个所述点云文件渲染并显示。

    2.根据权利要求1所述的点云数据渲染展示方法,其特征在于,所述步骤s1包括:

    步骤s11,建立抽稀等级表,所述抽稀等级表包括多个权限等级和多个抽稀级别,多个所述权限等级和多个所述抽稀级别一一对应设置;

    步骤s12,构建访问权限数据库,所述访问权限数据库包括多个权限秘钥,每个所述权限秘钥皆对应一个所述权限等级;

    步骤s13,获取访问秘钥,并扫描是否有与所述访问秘钥相同的所述权限秘钥,若有,则寻找到与该所述权限秘钥对应的所述权限等级,并将该权限等级对应的所述抽稀级别标记为目标抽稀级别。

    3.根据权利要求1所述的点云数据渲染展示方法,其特征在于,所述步骤s4包括:

    步骤s41,基于处理器性能确定能开启线程的数量,其中一个线程用作所述主线程,其它线程皆用作所述子线程;

    步骤s42,利用多个所述子线程对多个所述点云文件由大至小进行渲染。

    4.根据权利要求3所述的点云数据渲染展示方法,其特征在于,所述步骤s42包括:

    步骤s421,当所述子线程数量大于所述点云文件数量时,每个所述点云文件皆采用一个所述子线程进行渲染;

    步骤s422,当所述子线程数量小于所述点云文件数量时,多个所述点云文件由大至小进行渲染。

    5.根据权利要求4所述的点云数据渲染展示方法,其特征在于,所述步骤s42还包括:确定待检测点云数据的视觉中心,优先对以视觉中心为中点半径为预设的视野长度的当前视野区域中的所述点云文件进行渲染。

    6.根据权利要求5所述的点云数据渲染展示方法,其特征在于,所述步骤s42还包括:确定待检测点云数据的视觉方向,优先对延所述视觉方向表层的所述点云文件进行渲染。

    7.一种点云数据渲染展示系统,其特征在于,包括:

    目标抽稀级别获取单元,用于获取目标抽稀级别;

    点云数据抽稀单元,用于依据所述目标抽稀级别对点云数据进行抽稀,以获得待渲染点云数据;

    点云数据划分单元,用于依据八叉树结构原则对所述待测点云数据进行划分,形成多个点云文件;

    点云文件渲染单元,用于开启一个主线程和多个子线程对多个所述点云文件渲染并显示。

    8.根据权利要求7所述的点云数据渲染展示系统,其特征在于,所述目标抽稀级别获取单元包括:

    抽稀等级表子单元,用于建立抽稀等级表,所述抽稀等级表包括多个权限等级和多个抽稀级别,多个所述权限等级和多个所述抽稀级别一一对应设置;

    访问权限数据库子单元,用于构建访问权限数据库,所述访问权限数据库包括多个权限秘钥,每个所述权限秘钥皆对应一个所述权限等级;

    目标抽稀级别标记子单元,用于获取访问秘钥,并扫描是否有与所述访问秘钥相同的所述权限秘钥,若有,则寻找到与该所述权限秘钥对应的所述权限等级,并将该权限等级对应的所述抽稀级别标记为目标抽稀级别。

    9.根据权利要求7所述的点云数据渲染展示系统,其特征在于,所述点云文件渲染单元包括:

    线程开启子单元,用于基于处理器性能确定能开启线程的数量,其中一个线程用作所述主线程,其它线程皆用作所述子线程;

    渲染子单元,用于利用多个所述子线程对多个所述点云文件由大至小进行渲染。

    10.根据权利要求9所述的点云数据渲染展示系统,其特征在于,所述渲染子单元具体用于:当所述子线程数量大于所述点云文件数量时,每个所述点云文件皆采用一个所述子线程进行渲染;当所述子线程数量小于所述点云文件数量时,多个所述点云文件由大至小进行渲染。

    技术总结
    本发明公开了一种点云数据渲染展示方法及系统,方法包括:获取目标抽稀级别;依据目标抽稀级别对点云数据进行抽稀,以获得待渲染点云数据;依据八叉树结构原则对待测点云数据进行划分,形成多个点云文件;开启一个主线程和多个子线程对多个点云文件渲染并显示。本发明实施例通过对点云数据进行抽稀,使得点云数据的点云大量减少,从而有效的降低后期渲染时的运算量。依照八叉树结构对抽希之后的待检测点云数据进行划分,可获得更为合理的结构和空间关系,进而便于进一步提高渲染的速度。此外,通过采用多线程同时渲染的方式,可以进一步提高渲染的效率。本发明实施例有效的解决了传统web渲染速度慢的问题。

    技术研发人员:李清;闫梦秋;黄安子
    受保护的技术使用者:深圳供电局有限公司
    技术研发日:2020.11.30
    技术公布日:2021.03.12

    转载请注明原文地址:https://wp.8miu.com/read-16005.html

    最新回复(0)