CN111127610B - 一种点云数据三维可视化渲染方法与计算方法 - Google Patents
一种点云数据三维可视化渲染方法与计算方法 Download PDFInfo
- Publication number
- CN111127610B CN111127610B CN201911332970.0A CN201911332970A CN111127610B CN 111127610 B CN111127610 B CN 111127610B CN 201911332970 A CN201911332970 A CN 201911332970A CN 111127610 B CN111127610 B CN 111127610B
- Authority
- CN
- China
- Prior art keywords
- data
- point cloud
- rendering
- dimensional
- grid
- 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
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
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—3D [Three Dimensional] animation
- G06T13/40—3D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/04—Indexing scheme for image data processing or generation, in general involving 3D image data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/56—Particle system, point based geometry or rendering
-
- 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)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Graphics (AREA)
- Image Generation (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种点云数据三维可视化渲染方法与计算方法,具体包括以下步骤:S1、首先不排除其它数据,通过转换手段,生成具有标准化定义格式的点云数据,本发明涉及点云数据三维可视化技术领域。该点云数据三维可视化渲染方法与计算方法,通过在数据归一化与分类处理后,进行点云渲染,通过顶点渲染、基于三维网格的映射渲染、基于三角剖分算法的网格重构渲染、点云运动动画和点云粒子动画,实现了点云数据的多种渲染算法,这些算法的渲染方式不同,效果也不一样,具有不同的应用方向,方法之间可互相补充,操作更加可靠,通过高效的算法,实现点云数据的快速渲染,让耗时十几分钟的渲染,降低至几分钟或者几十秒。
Description
技术领域
本发明涉及点云数据三维可视化技术领域,具体为一种点云数据三维可视化渲染方法与计算方法。
背景技术
近年来,三维扫描技术等扫描技术,在硬件方面获得了突破,在实用性方面取得了长足的进步,被越来越多地应用到实际生产中,利用物联网技术也得到突破性的发展,在很多场景,布设了大量的采集数据的传感器,在一些科研项目,如光学、声学、力学和电磁分析等,很多算法软件通过复杂的计算,如有限元分析等,产生大量的数据,在医学领域,一些物理检测也能获得大量的数据,然后基于算法,进行影像呈现,这些数据很多都是基于三维空间节点的点云数据,如何对这些数据加以利用,将冰冷的数据变成鲜活的影像,然后被引用、处理、分析和计算,是一个热门的研究方向。
目前在国内对点云数据三维可视化的起步较弱,大多停留在理论分析阶段,市面上也缺少相关的产品应用,基本依赖于软件的进口,而国外的软件,大多仅针对于具体的行业,功能也相当有限,无法进行具体问题具体分析,另外不同的数据的格式是不同的,也对数据的应用造成了干扰。
发明内容
(一)解决的技术问题
针对现有技术的不足,本发明提供了一种点云数据三维可视化渲染方法与计算方法,解决了大多仅针对于具体的行业,功能也相当有限,无法进行具体问题具体分析,另外不同的数据的格式是不同的,也对数据的应用造成了干扰的问题。
(二)技术方案
为实现以上目的,本发明通过以下技术方案予以实现:一种点云数据三维可视化渲染方法,具体包括以下步骤:
S1、首先不排除其它数据,通过转换手段,生成具有标准化定义格式的点云数据;
S2、由于数据源文件的格式各不相同,因此在渲染计算之前,通过一个通用的工具对数据进行解析,并生成一个通用格式的.csv中间文件,其中在数据拆分过程中,会自动排斥掉不符合标准化定义的数据,经过处理的中间文件,文件会变得小很多,同时格式清晰,加载时比加载源数据要快几倍至几十倍;
S3、数据访问具有唯一性,因此在加载中间数据时,对整个三维空间进行划分,形成唯一的键值,将每个点云都绑定一个键值,这样就保证了点云的唯一化,如果存在相同键值的点云,则只取其中一个,从而实现对数据的归一化处理,数据加载并归一化后,以点云数据字典的形式存储在内存中,可以通过键值访问,当数据量很大的时候,为了快速访问数据,可以对数据进行多级分类,即生成多级的容器,在数据查找时,先查找主容器,再查找次级容器,最后查找数据,当数据需要实现不同的功能时,可基于该功能的需要进行分类,在数据加载时,采用多线程加载手段,大幅提升加载速度;
S4、在数据归一化与分类处理后,进行点云渲染,进行顶点渲染时,首先,新建一个三维网格,根据字典数据的点云单位的三维空间坐标,生成三维网格的顶点,根据字典数据的点云单位的渲染数据如能量,根据一个颜色转换算法,计算出三维网格的颜色,根据顶点渲染器,将点云网格渲染出来;
S5、进行基于三维网格的映射渲染时,渲染之前,需要将网格模型碎片化,碎片化步骤如下,遍历网格模型的每一个三角面,对三角面按照设定的精度,在三角面内设置剖分点,按照平面的三角剖分算法,把三角面碎化成多个更小的三角面,小角面顶点的法线与原三角面一致,根据设置的剖分点以及新生成的三角面,建立新的网格,完成模型碎片后,再进行渲染,渲染步骤如下,遍历新模型的顶点,将每一个顶点,通过空间换算算法,换算成绝对空间的坐标,根据绝对空间坐标,按点去数据的键值计算方法,获得键值,根据键值,在数据字典中查找到点云数据,如果未查到即表示能量为0,根据点云数据的能量值,获得该顶点的颜色值,在获得所有点的颜色值后,根据frame渲染器,实现新模型的渲染;
S6、对基于三角剖分算法的网格重构渲染时,其中先对点云数据进行分割,点云数据的采集方向一般不进行分割,只对其他两个方向进行网络划分,给划分的单元设定键值,方便查询,然后通过三角剖分算法,三角面化,对每一个划分的单元进行三角剖分,根据单内的数据,获得在数据采集方向上的投影,基于投影进行三角剖分,获得顶点数据、颜色及三角面,根据剖分数据,生成模型单元,最后无缝连接,对相邻的两个模型单元,进行补面操作,同时发起合并操作,合并后,网格应最少,这样可以减少渲染支出,即可实现三角面渲染;
S7、通过点云运动动画,当点云数据对应的空间位置/能量发生改变时,重新构建模型,整体的模型也跟随改动,如需要,通过GPU进行复杂的计算出模型的改变动量,然后再进行模型重构,可保持高帧率的渲染,然后通过插值的方法,可以实现不同维度如时间、温度变化时,点云模型的改变,从而产生整体运动视觉;
S8、然后通过点云粒子动画,首先通过制作三维模型,并绑定骨骼动画,对三维模型的每个网格,进行点云采样,形成一个以网格为键值,点云链表为数据的字典,根据所有采集的点云的数量,建立一个粒子特效,运行骨骼动画,网格节点会发生改动,这时点云的位置也发生改变,将点云位置同步给对应的粒子,即实现了点云粒子动画,产生动画视觉。
本发明还公开了一种点云数据三维可视化计算方法,具体包括以下步骤:
T1、首先不排除其它数据,通过转换手段,生成具有标准化定义格式的点云数据;
T2、由于数据源文件的格式各不相同,因此在渲染计算之前,通过一个通用的工具对数据进行解析,并生成一个通用格式的.csv中间文件,其中在数据拆分过程中,会自动排斥掉不符合标准化定义的数据,经过处理的中间文件,文件会变得小很多,同时格式清晰,加载时比加载源数据要快几倍至几十倍;
T3、数据访问具有唯一性,因此在加载中间数据时,对整个三维空间进行划分,形成唯一的键值,将每个点云都绑定一个键值,这样就保证了点云的唯一化,如果存在相同键值的点云,则只取其中一个,从而实现对数据的归一化处理,数据加载并归一化后,以点云数据字典的形式存储在内存中,可以通过键值访问,当数据量很大的时候,为了快速访问数据,可以对数据进行多级分类,即生成多级的容器,在数据查找时,先查找主容器,再查找次级容器,最后查找数据,当数据需要实现不同的功能时,可基于该功能的需要进行分类,在数据加载时,采用多线程加载手段,大幅提升加载速度;
T4、数据归一化与分类处理后,进行点云数据的分析计算,基于GPU的实时计算并渲染,首先以buffer的形式,将点云数据作为数据流存放于内存中,将复杂的计算端,放置在GPU上进行处理,依赖GPU强大的浮点运算力,要实现复杂的点云计算,按帧输出,在进行计算之后,可按顶点渲染重新获得渲染,可实现图像过滤及图像强化的功能;
T5、然后通过根据已有的不同阶段的数据,计算出粒子的成长因子、扩散因子和消亡因子;
T6、然后点云数据在空间化之后,能够基于空间的一些属性进行统计计算,如基于XYZ方向上某一段距离的能量统计,以及实现重复数据与有效数据的甄别,并将有效数据导入或者导出。
优选的,所述步骤S2或T2中数据源文件的智能解析方法可分为四种类型,具体包括:
a1、常规的标准分隔符解析、不规则空格的解析、数据粘连一起的解析和定制化解析,常规的标准分隔符解析采用开放的数据拆分算法拆分数据,生成通用格式的文件;
a2、不规则空格的解析,即解析不同数量的空格符作为分隔符的数据,被默认为只有一个空格符,通用数据拆分算法,然后被替换成“,”,生成为通用格式的文件;
a3、数据粘连一起的解析,针对有些源数据没有通用分隔符的情况,设置一个替换脚本,通过对数据进行替换,替换成有分隔符的数据,然后采用开发的数据拆分算法拆分数据,生成通用格式的文件;
a4、定制化解析,针对有些散乱的数据,通过编写鉴定功能或者采用人工智能的方式,将数据拆分生成通用格式的文件。
优选的,所述步骤S3或T3中对整个三维空间划分的方法其中有多种,包括但不限于以下两种,第一种为从XYZ三个方向划分网格,单元格的大小可自定义,第二种为根据极坐标进行网格的划分,单元格的大小可自定义。
优选的,所述步骤S1或T1中具有标准化定义格式的点云数据为,有一个唯一的键值、三维空间坐标、若干个参与计算的属性值,默认地存在一个能量值,即在满足键值和三维空间坐标的情况下,不限制字段数,平面点云数据不在支持范围内。
(三)有益效果
本发明提供了一种点云数据三维可视化渲染方法与计算方法。与现有技术相比具备以下有益效果:
(1)、该点云数据三维可视化渲染方法与计算方法,通过在数据归一化与分类处理后,进行点云渲染,通过顶点渲染、基于三维网格的映射渲染、基于三角剖分算法的网格重构渲染、点云运动动画和点云粒子动画,实现了点云数据的多种渲染算法,这些算法的渲染方式不同,效果也不一样,具有不同的应用方向,方法之间可互相补充,操作更加可靠。
(2)、该点云数据三维可视化渲染方法与计算方法,通过数据源文件的智能解析以及数据的归一化与分类处理,通过高效的算法,实现点云数据的快速渲染,让耗时十几分钟的渲染,降低至几分钟或者几十秒。
(3)、该点云数据三维可视化渲染方法与计算方法,通过基于GPU的实时计算并渲染,首先以buffer的形式,将点云数据作为数据流存放于内存中,将复杂的计算端,放置在GPU上进行处理,依赖GPU强大的浮点运算力,要实现复杂的点云计算,按帧输出,在进行计算之后,可按顶点渲染重新获得渲染,实现了点云图像的即时处理,如图像过滤、强化等。
(4)、该点云数据三维可视化渲染方法与计算方法,通过根据已有的不同阶段的数据,计算出粒子的成长因子、扩散因子和消亡因子,点云数据在空间化之后,能够基于空间的一些属性进行统计计算,如基于XYZ方向上某一段距离的能量统计,以及实现重复数据与有效数据的甄别,并将有效数据导入或者导出,实现了点云数据的多种通行性分析,基于已有数据和三维影像,进行深度计算分析,发掘数据的价值,如点云的变化计算、趋势预测和数据统计等。
附图说明
图1为本发明结构的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,本发明实施例提供一种技术方案:一种点云数据三维可视化渲染方法,具体包括以下步骤:
S1、首先不排除其它数据,通过转换手段,生成具有标准化定义格式的点云数据;
S2、由于数据源文件的格式各不相同,因此在渲染计算之前,通过一个通用的工具对数据进行解析,并生成一个通用格式的.csv中间文件,其中在数据拆分过程中,会自动排斥掉不符合标准化定义的数据,经过处理的中间文件,文件会变得小很多,同时格式清晰,加载时比加载源数据要快几倍至几十倍;
S3、数据访问具有唯一性,因此在加载中间数据时,对整个三维空间进行划分,形成唯一的键值,将每个点云都绑定一个键值,这样就保证了点云的唯一化,如果存在相同键值的点云,则只取其中一个,从而实现对数据的归一化处理,数据加载并归一化后,以点云数据字典的形式存储在内存中,可以通过键值访问,当数据量很大的时候,为了快速访问数据,可以对数据进行多级分类,即生成多级的容器,在数据查找时,先查找主容器,再查找次级容器,最后查找数据,当数据需要实现不同的功能时,可基于该功能的需要进行分类,在数据加载时,采用多线程加载手段,大幅提升加载速度;
S4、在数据归一化与分类处理后,进行点云渲染,进行顶点渲染时,首先,新建一个三维网格,根据字典数据的点云单位的三维空间坐标,生成三维网格的顶点,根据字典数据的点云单位的渲染数据如能量,根据一个颜色转换算法,计算出三维网格的颜色,根据顶点渲染器,将点云网格渲染出来,顶点渲染基于内存中的点云数据字典的数据,顶点渲染是在三维空间,将每一个点,在屏幕空间只渲染一个固定大小的点的渲染方式,该种方法实现的点云渲染,GPU渲染压力小,支持10亿级别数量的点云的渲染;
S5、进行基于三维网格的映射渲染时,渲染之前,需要将网格模型碎片化,碎片化步骤如下,遍历网格模型的每一个三角面,对三角面按照设定的精度,在三角面内设置剖分点,按照平面的三角剖分算法,把三角面碎化成多个更小的三角面,小角面顶点的法线与原三角面一致,根据设置的剖分点以及新生成的三角面,建立新的网格,完成模型碎片后,再进行渲染,渲染步骤如下,遍历新模型的顶点,将每一个顶点,通过空间换算算法,换算成绝对空间的坐标,根据绝对空间坐标,按点去数据的键值计算方法,获得键值,根据键值,在数据字典中查找到点云数据,如果未查到即表示能量为0,根据点云数据的能量值,获得该顶点的颜色值,在获得所有点的颜色值后,根据frame渲染器,实现新模型的渲染,基于三维网格的映射渲染方式,用于查看监控模型的状态,在模型碎片环节,设置的精度越高,数据呈现效果越好,但是消耗的计算也成倍增加;
S6、对基于三角剖分算法的网格重构渲染时,其中先对点云数据进行分割,点云数据的采集方向一般不进行分割,只对其他两个方向进行网络划分,给划分的单元设定键值,方便查询,然后通过三角剖分算法,三角面化,对每一个划分的单元进行三角剖分,根据单内的数据,获得在数据采集方向上的投影,基于投影进行三角剖分,获得顶点数据、颜色及三角面,根据剖分数据,生成模型单元,最后无缝连接,对相邻的两个模型单元,进行补面操作,同时发起合并操作,合并后,网格应最少,这样可以减少渲染支出,即可实现三角面渲染,通过三角剖分算法实现的网格重构渲染方法,适合不太复杂的模型,当模型比较复杂的时候,应采用顶点渲染的方式,简单快捷;
S7、通过点云运动动画,当点云数据对应的空间位置/能量发生改变时,重新构建模型,整体的模型也跟随改动,如需要,通过GPU进行复杂的计算出模型的改变动量,然后再进行模型重构,可保持高帧率的渲染,然后通过插值的方法,可以实现不同维度如时间、温度变化时,点云模型的改变,从而产生整体运动视觉;
S8、然后通过点云粒子动画,首先通过制作三维模型,并绑定骨骼动画,对三维模型的每个网格,进行点云采样,形成一个以网格为键值,点云链表为数据的字典,根据所有采集的点云的数量,建立一个粒子特效,运行骨骼动画,网格节点会发生改动,这时点云的位置也发生改变,将点云位置同步给对应的粒子,即实现了点云粒子动画,产生动画视觉。
本发明还公开了一种点云数据三维可视化计算方法,具体包括以下步骤:
T1、首先不排除其它数据,通过转换手段,生成具有标准化定义格式的点云数据;
T2、由于数据源文件的格式各不相同,因此在渲染计算之前,通过一个通用的工具对数据进行解析,并生成一个通用格式的.csv中间文件,其中在数据拆分过程中,会自动排斥掉不符合标准化定义的数据,经过处理的中间文件,文件会变得小很多,同时格式清晰,加载时比加载源数据要快几倍至几十倍;
T3、数据访问具有唯一性,因此在加载中间数据时,对整个三维空间进行划分,形成唯一的键值,将每个点云都绑定一个键值,这样就保证了点云的唯一化,如果存在相同键值的点云,则只取其中一个,从而实现对数据的归一化处理,数据加载并归一化后,以点云数据字典的形式存储在内存中,可以通过键值访问,当数据量很大的时候,为了快速访问数据,可以对数据进行多级分类,即生成多级的容器,在数据查找时,先查找主容器,再查找次级容器,最后查找数据,当数据需要实现不同的功能时,可基于该功能的需要进行分类,在数据加载时,采用多线程加载手段,大幅提升加载速度;
T4、数据归一化与分类处理后,进行点云数据的分析计算,基于GPU的实时计算并渲染,首先以buffer的形式,将点云数据作为数据流存放于内存中,将复杂的计算端,放置在GPU上进行处理,依赖GPU强大的浮点运算力,要实现复杂的点云计算,按帧输出,在进行计算之后,可按顶点渲染重新获得渲染,可实现图像过滤及图像强化的功能;
T5、然后通过根据已有的不同阶段的数据,计算出粒子的成长因子、扩散因子和消亡因子,其中成长因子中粒子能量会根据成长因子按线性进行成长,扩散因子,当粒子的能量值大小某个值的时候,会向上下前后左右,6个方向进行扩散,如果附近的粒子的能量大小扩散后的加权值时,不进行扩散,如果小于扩散后的加权值时,则变为加权值,如果相邻的位置没有粒子,则创建粒子,扩散的三维空间,按归一化来定义,消亡因子,粒子能量会随着消亡因子,按线性减小,当低于某值时,粒子自动消失;
T6、然后点云数据在空间化之后,能够基于空间的一些属性进行统计计算,如基于XYZ方向上某一段距离的能量统计,以及实现重复数据与有效数据的甄别,并将有效数据导入或者导出。
本发明中,步骤S2或T2中数据源文件的智能解析方法可分为四种类型,具体包括:
a1、常规的标准分隔符解析、不规则空格的解析、数据粘连一起的解析和定制化解析,常规的标准分隔符解析采用开放的数据拆分算法拆分数据,生成通用格式的文件;
a2、不规则空格的解析,即解析不同数量的空格符作为分隔符的数据,被默认为只有一个空格符,通用数据拆分算法,然后被替换成“,”,生成为通用格式的文件;
a3、数据粘连一起的解析,针对有些源数据没有通用分隔符的情况,设置一个替换脚本,通过对数据进行替换,替换成有分隔符的数据,然后采用开发的数据拆分算法拆分数据,生成通用格式的文件;
a4、定制化解析,针对有些散乱的数据,通过编写鉴定功能或者采用人工智能的方式,将数据拆分生成通用格式的文件。
本发明中,步骤S3或T3中对整个三维空间划分的方法其中有多种,包括但不限于以下两种,第一种为从XYZ三个方向划分网格,单元格的大小可自定义,第二种为根据极坐标进行网格的划分,单元格的大小可自定义。
本发明中,步骤S1或T1中具有标准化定义格式的点云数据为,有一个唯一的键值、三维空间坐标、若干个参与计算的属性值,默认地存在一个能量值,即在满足键值和三维空间坐标的情况下,不限制字段数,平面点云数据不在支持范围内。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
Claims (5)
1.一种点云数据三维可视化渲染方法,其特征在于:具体包括以下步骤:
S1、首先不排除其它数据,通过转换手段,生成具有标准化定义格式的点云数据;
S2、由于数据源文件的格式各不相同,因此在渲染计算之前,通过一个通用的工具对数据进行解析,并生成一个通用格式的.csv中间文件,其中在数据拆分过程中,会自动排斥掉不符合标准化定义的数据,经过处理的中间文件,文件会变得小很多,同时格式清晰,加载时比加载源数据要快几倍至几十倍;
S3、数据访问具有唯一性,因此在加载中间数据时,对整个三维空间进行划分,形成唯一的键值,将每个点云都绑定一个键值,这样就保证了点云的唯一化,如果存在相同键值的点云,则只取其中一个,从而实现对数据的归一化处理,数据加载并归一化后,以点云数据字典的形式存储在内存中,可以通过键值访问,当数据量很大的时候,为了快速访问数据,可以对数据进行多级分类,即生成多级的容器,在数据查找时,先查找主容器,再查找次级容器,最后查找数据,当数据需要实现不同的功能时,可基于该功能的需要进行分类,在数据加载时,采用多线程加载手段,大幅提升加载速度;
S4、在数据归一化与分类处理后,进行点云渲染,进行顶点渲染时,首先,新建一个三维网格,根据字典数据的点云单位的三维空间坐标,生成三维网格的顶点,根据字典数据的点云单位的能量渲染数据,根据一个颜色转换算法,计算出三维网格的颜色,根据顶点渲染器,将点云网格渲染出来;
S5、进行基于三维网格的映射渲染时,渲染之前,需要将网格模型碎片化,碎片化步骤如下,遍历网格模型的每一个三角面,对三角面按照设定的精度,在三角面内设置剖分点,按照平面的三角剖分算法,把三角面碎化成多个更小的三角面,小角面顶点的法线与原三角面一致,根据设置的剖分点以及新生成的三角面,建立新的网格,完成模型碎片后,再进行渲染,渲染步骤如下,遍历新模型的顶点,将每一个顶点,通过空间换算算法,换算成绝对空间的坐标,根据绝对空间坐标,按点去数据的键值计算方法,获得键值,根据键值,在数据字典中查找到点云数据,如果未查到即表示能量为0,根据点云数据的能量值,获得该顶点的颜色值,在获得所有点的颜色值后,根据frame渲染器,实现新模型的渲染;
S6、对基于三角剖分算法的网格重构渲染时,其中先对点云数据进行分割,点云数据的采集方向通常不进行分割,只对其他两个方向进行网络划分,给划分的单元设定键值,方便查询,然后通过三角剖分算法,三角面化,对每一个划分的单元进行三角剖分,根据单内的数据,获得在数据采集方向上的投影,基于投影进行三角剖分,获得顶点数据、颜色及三角面,根据剖分数据,生成模型单元,最后无缝连接,对相邻的两个模型单元,进行补面操作,同时发起合并操作,合并后,网格应最少,这样可以减少渲染支出,即可实现三角面渲染;
S7、通过点云运动动画,当点云数据对应的空间位置/能量发生改变时,重新构建模型,整体的模型也跟随改动,如需要,通过GPU进行复杂的计算出模型的改变动量,然后再进行模型重构,可保持高帧率的渲染,然后通过插值的方法,可以实现时间和温度不同维度变化时,点云模型的改变,从而产生整体运动视觉;
S8、然后通过点云粒子动画,首先通过制作三维模型,并绑定骨骼动画,对三维模型的每个网格,进行点云采样,形成一个以网格为键值,点云链表为数据的字典,根据所有采集的点云的数量,建立一个粒子特效,运行骨骼动画,网格节点会发生改动,这时点云的位置也发生改变,将点云位置同步给对应的粒子,即实现了点云粒子动画,产生动画视觉。
2.一种点云数据三维可视化计算方法,其特征在于:具体包括以下步骤:
T1、首先不排除其它数据,通过转换手段,生成具有标准化定义格式的点云数据;
T2、由于数据源文件的格式各不相同,因此在渲染计算之前,通过一个通用的工具对数据进行解析,并生成一个通用格式的.csv中间文件,其中在数据拆分过程中,会自动排斥掉不符合标准化定义的数据,经过处理的中间文件,文件会变得小很多,同时格式清晰,加载时比加载源数据要快几倍至几十倍;
T3、数据访问具有唯一性,因此在加载中间数据时,对整个三维空间进行划分,形成唯一的键值,将每个点云都绑定一个键值,这样就保证了点云的唯一化,如果存在相同键值的点云,则只取其中一个,从而实现对数据的归一化处理,数据加载并归一化后,以点云数据字典的形式存储在内存中,可以通过键值访问,当数据量很大的时候,为了快速访问数据,可以对数据进行多级分类,即生成多级的容器,在数据查找时,先查找主容器,再查找次级容器,最后查找数据,当数据需要实现不同的功能时,可基于该功能的需要进行分类,在数据加载时,采用多线程加载手段,大幅提升加载速度;
T4、数据归一化与分类处理后,进行点云数据的分析计算,基于GPU的实时计算并渲染,首先以buffer的形式,将点云数据作为数据流存放于内存中,将复杂的计算端,放置在GPU上进行处理,依赖GPU强大的浮点运算力,要实现复杂的点云计算,按帧输出,在进行计算之后,可按顶点渲染重新获得渲染,可实现图像过滤及图像强化的功能;
T5、然后通过根据已有的不同阶段的数据,计算出粒子的成长因子、扩散因子和消亡因子;
T6、然后点云数据在空间化之后,能够基于空间的一些属性进行统计计算,以及实现重复数据与有效数据的甄别,并将有效数据导入或者导出。
3.根据权利要求1-2任意一项所述的一种点云数据三维可视化渲染方法与计算方法,其特征在于:所述步骤S2或T2中数据源文件的智能解析方法可分为四种类型,具体包括:
a1、常规的标准分隔符解析、不规则空格的解析、数据粘连一起的解析和定制化解析,常规的标准分隔符解析采用开放的数据拆分算法拆分数据,生成通用格式的文件;
a2、不规则空格的解析,即解析不同数量的空格符作为分隔符的数据,被默认为只有一个空格符,通用数据拆分算法,然后被替换成“,”,生成为通用格式的文件;
a3、数据粘连一起的解析,针对有些源数据没有通用分隔符的情况,设置一个替换脚本,通过对数据进行替换,替换成有分隔符的数据,然后采用开发的数据拆分算法拆分数据,生成通用格式的文件;
a4、定制化解析,针对有些散乱的数据,通过编写鉴定功能或者采用人工智能的方式,将数据拆分生成通用格式的文件。
4.根据权利要求1-2任意一项所述的一种点云数据三维可视化渲染方法与计算方法,其特征在于:所述步骤S3或T3中对整个三维空间划分的方法其中有多种,包括但不限于以下两种,第一种为从XYZ三个方向划分网格,单元格的大小可自定义,第二种为根据极坐标进行网格的划分,单元格的大小可自定义。
5.根据权利要求1-2任意一项所述的一种点云数据三维可视化渲染方法与计算方法,其特征在于:所述步骤S1或T1中具有标准化定义格式的点云数据为,有一个唯一的键值、三维空间坐标、若干个参与计算的属性值,默认地存在一个能量值,即在满足键值和三维空间坐标的情况下,不限制字段数,平面点云数据不在支持范围内。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911332970.0A CN111127610B (zh) | 2019-12-23 | 2019-12-23 | 一种点云数据三维可视化渲染方法与计算方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911332970.0A CN111127610B (zh) | 2019-12-23 | 2019-12-23 | 一种点云数据三维可视化渲染方法与计算方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111127610A CN111127610A (zh) | 2020-05-08 |
CN111127610B true CN111127610B (zh) | 2023-07-21 |
Family
ID=70500976
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911332970.0A Active CN111127610B (zh) | 2019-12-23 | 2019-12-23 | 一种点云数据三维可视化渲染方法与计算方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111127610B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021226862A1 (en) * | 2020-05-13 | 2021-11-18 | Shanghaitech University | Neural opacity point cloud |
CN111553973B (zh) * | 2020-05-19 | 2021-03-16 | 北京数字绿土科技有限公司 | 一种插件式的点云颜色渲染方法、设备及计算机存储介质 |
CN111338742B (zh) * | 2020-05-19 | 2020-09-08 | 北京数字绿土科技有限公司 | 一种点云数据的批处理方法及处理装置 |
CN111681307B (zh) * | 2020-06-08 | 2023-10-20 | 武汉真蓝三维科技有限公司 | 一种应用于三维软件的动态三维坐标轴的实现方法 |
CN112035197B (zh) * | 2020-08-11 | 2021-07-13 | 深圳前海微众银行股份有限公司 | 一种前端页面的配置方法及装置 |
CN112862968B (zh) * | 2021-03-15 | 2024-01-19 | 网易(杭州)网络有限公司 | 目标植被模型的渲染显示方法、装置、设备及存储介质 |
CN114970216B (zh) * | 2022-07-29 | 2022-10-21 | 中国人民解放军战略支援部队航天工程大学 | 一种基于剖分网格的电磁环境可视化表达方法 |
CN116127792B (zh) * | 2023-04-17 | 2023-07-04 | 北京世冠金洋科技发展有限公司 | 一种散乱数据的插值方法及装置 |
CN116977523B (zh) * | 2023-07-25 | 2024-04-26 | 快速直接(深圳)精密制造有限公司 | 一种step格式在web端的渲染方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB201518613D0 (en) * | 2015-10-21 | 2015-12-02 | Nokia Technologies Oy | 3D scene rendering |
CN106096016A (zh) * | 2016-06-24 | 2016-11-09 | 北京建筑大学 | 一种基于网络的三维点云可视化方法以及装置 |
CN106846498A (zh) * | 2017-02-08 | 2017-06-13 | 武汉海达数云技术有限公司 | 激光点云渲染方法和装置 |
-
2019
- 2019-12-23 CN CN201911332970.0A patent/CN111127610B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB201518613D0 (en) * | 2015-10-21 | 2015-12-02 | Nokia Technologies Oy | 3D scene rendering |
CN106096016A (zh) * | 2016-06-24 | 2016-11-09 | 北京建筑大学 | 一种基于网络的三维点云可视化方法以及装置 |
CN106846498A (zh) * | 2017-02-08 | 2017-06-13 | 武汉海达数云技术有限公司 | 激光点云渲染方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111127610A (zh) | 2020-05-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111127610B (zh) | 一种点云数据三维可视化渲染方法与计算方法 | |
CN110738721B (zh) | 基于视频几何分析的三维场景渲染加速方法及系统 | |
CN107767453B (zh) | 一种基于规则约束的建筑物lidar点云重构优化方法 | |
CN107993279B (zh) | 一种场景精确表达方法 | |
CN108124489B (zh) | 信息处理方法、装置、云处理设备以及计算机程序产品 | |
WO2011035800A2 (en) | Direct ray tracing of 3d scenes | |
US10482629B2 (en) | System, method and computer program product for automatic optimization of 3D textured models for network transfer and real-time rendering | |
JP2006031561A (ja) | 高次元テクスチャマッピング装置、方法及びプログラム | |
Wald et al. | Ray tracing structured AMR data using ExaBricks | |
CN105957149A (zh) | 一种适用于高效渲染的城市三维模型数据预处理方法 | |
CN103729873B (zh) | 一种内容感知的环境光采样方法 | |
Tzevanidis et al. | From multiple views to textured 3d meshes: a gpu-powered approach | |
Yang et al. | A completely parallel surface reconstruction method for particle-based fluids | |
Meyer et al. | Query-driven visualization of time-varying adaptive mesh refinement data | |
CN105205851B (zh) | 一种基于gpu超算的特种电影渲染方法及系统 | |
KR20230167746A (ko) | 메시 정점 위치에 대한 반복 및 루트 찾기를 사용하여 표면에 근사하는 폴리곤 메시를 생성하기 위한 방법 및 시스템 | |
Scholz et al. | Level of Detail for Real-Time Volumetric Terrain Rendering. | |
CN110111407B (zh) | 一种海量三维网格数据的调度渲染方法及系统 | |
CN114638866A (zh) | 一种基于局部特征学习的点云配准方法及系统 | |
CN113486416A (zh) | 一种3d建筑楼层分层的实现方法 | |
Sun et al. | Automated abstraction of building models for 3D navigation on mobile devices | |
Legrand et al. | Morton integrals for high speed geometry simplification | |
CN110009744B (zh) | 一种视觉映射的点云重建方法及其系统 | |
CN114708140B (zh) | 一种基于单元的数值计算模型实时交互剖切可视化方法 | |
Li et al. | Novel hierarchical level of detail combinatorial optimization method for large-scale 3D scene |
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 |