CN107633546A - 基于gpu的可交互三维流场自适应分辨率动态可视化算法 - Google Patents

基于gpu的可交互三维流场自适应分辨率动态可视化算法 Download PDF

Info

Publication number
CN107633546A
CN107633546A CN201710827686.5A CN201710827686A CN107633546A CN 107633546 A CN107633546 A CN 107633546A CN 201710827686 A CN201710827686 A CN 201710827686A CN 107633546 A CN107633546 A CN 107633546A
Authority
CN
China
Prior art keywords
gpu
probability density
interactive
streamline
resolution ratio
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
CN201710827686.5A
Other languages
English (en)
Other versions
CN107633546B (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.)
Ocean University of China
Original Assignee
Ocean University of China
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 Ocean University of China filed Critical Ocean University of China
Priority to CN201710827686.5A priority Critical patent/CN107633546B/zh
Publication of CN107633546A publication Critical patent/CN107633546A/zh
Application granted granted Critical
Publication of CN107633546B publication Critical patent/CN107633546B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Image Generation (AREA)

Abstract

本发明属于科学计算可视化领域,具体涉及一种基于GPU的可交互三维流场自适应分辨率动态可视化算法。本发明提出了一种基于GPU的可交互三维流场自适应分辨率动态可视化算法。该算法在视截体中均匀放置种子点,根据预渲染数据体的近平面和远平面纹理,将撒在数据范围外的部分种子点移动到数据范围内。生成概率密度球并渲染成概率密度体,以保证粒子在运动中的均匀分布。最后采用GPU加速渲染技术生成流线,然后利用Tessellation细分曲面技术将流线扩展为管线,实现三维流场的自适应分辨率动态可视化绘制。

Description

基于GPU的可交互三维流场自适应分辨率动态可视化算法
技术领域
本发明属于科学计算可视化领域,具体涉及一种基于GPU的可交互三维流场自适应分辨率动态可视化算法。
背景技术
流场可视化是科学可视化领域中重要的一支,随着计算机运算能力的提高尤其是GPU并行处理能力的提升和观测数据、模式数据资料的丰富,针对三维海洋流场的动态可视化成为可能,海洋流场三维可视化对于研究海流的产生、发展、消亡具有非常重要的意义。因此,三维流场可视化得到越来越多的关注,然而,三维流场固有的数据量大、变量多、随时间变化等特点对我们可视化三维流场提出了极大的挑战。人们提出了很多方法来解决这个问题,常见的方法有图标法、基于3D纹理算法、基于特征提取的流线放置算法和基于粒子追踪的几何算法。图标法一般采用矢量箭头,箭头的方向表示流场速度方向,并将速度大小映射到颜色空间,图标法存在严重的遮挡问题,且难以做到实时交互;纹理法采用纹理图像的方式表达流场特征,其特点是能够表达流场的较多细节如:涡旋、源点、鞍点,但是纹理法仍解决不了遮挡问题,无法表达三维流场内部结构,所以该方法更适用于表达二维流场;基于特征提取的流线放置算法侧重于表达流场的某一特征如涡旋等流场拓扑信息而不是表达全部的流场信息,而且该方法需要再可视化之前进行大量的预处理,所以不适用于实时可交互的三维流场可视化。
本发明提出的基于GPU的可交互三维流场自适应分辨率动态可视化算法,属于基于粒子追踪的几何算法一类,本算法在视截体中均匀放置粒子,在数据范围内的粒子基于其位置生成流线。相机的移动不改变撒点的密度,高效、精细地展现三维流场的各种特征。
发明内容
本发明提出了一种基于GPU的可交互三维流场自适应分辨率动态可视化算法。该算法在视截体中均匀放置种子点,根据预渲染数据体的近平面和远平面纹理,将撒在数据范围外的部分种子点移动到数据范围内。生成概率密度球并渲染成概率密度体,以保证粒子在运动中的均匀分布。最后采用GPU加速渲染技术生成流线,然后利用Tessellation细分曲面技术将流线扩展为管线,颜色和透明度由传输函数控制,实现三维流场的自适应分辨率动态可视化绘制。
为实现上述目的,本发明采用如下技术方案,具体步骤为:
(1)将数据体的近平面和远平面渲染成纹理,颜色表示在视截体中的深度;
(2)在视截体中撒点,通过(1)中生成的纹理矫正粒子位置;
(3)通过GPU的transform feedback机制实现粒子在三维流场中的运动,并利用径向基函数设计密度球来控制粒子在三维流场中的分布密度,通过GPU的Tessellation细分曲面技术基于粒子位置生成流管;
(4)通过传输函数对流线的颜色和透明度进行控制;
上述步骤(1)分别绘制数据体(凸面体)的近平面和远平面,将其在视截体中的深度归一化作为颜色。步骤(2)在视截体中撒点,将点的深度值与数据体的远、近平面比较,将落在数据体前或后的点重新撒在数据体中。步骤(3)以粒子的位置作为流线的起始位置,采样数据体获得速度,使用四阶Runge-Kutta后向积分得到下一个位置,在Tessellation Shader中将粒子扩展为流管。
本发明的有益效果在于:该算法以流线的形式动态展示大型三维流场,自适应分辨率使视口中流线的密度不变,流场局部特征在放大后可显示出更多细节。可以实时交互改变流线的长短、运动快慢和光滑程度,可通过传输函数改变流线颜色和透明度,方便观察和理解复杂流场中的各种现象。
附图说明
图1算法总体流程图。
图2数据体近平面示意图。
图3数据体远平面示意图。
图4扩充概率密度体示意图。
图5自适应分辨率流线效果图。
图6传输函数控制流线效果图。
具体实施方式
本发明在视截体中均匀、密集的分布粒子,渲染数据体远、近平面矫正撒点位置,采样速度场驱动粒子运动,创建概率密度图来控制粒子分布;通过在Tessellation Shader中积分基于粒子位置扩展出流线。包括以下步骤:
1.将数据体的近平面和远平面渲染成纹理
根据数据范围生成数据体,分别渲染数据体的外面和内面得到数据体的近平面和远平面,每个像素在视截体中深度值,是其距近裁剪面的距离。将该深度值除以远、近裁剪面之间的垂直距离,把得到的结果作为颜色值储存。获得数据体远、近平面两张纹理,如图2、图3;
2.在视截体中撒点并矫正撒点位置
在视截体中随机均匀分布新粒子,粒子的属性包括位置和年龄。计算粒子在视截体中的位置,与采样远、近平面纹理中相应位置的颜色值比较。通过改变深度的方式,将在视口坐标中位于数据体前、后的粒子移动到数据体中;
3.通过GPU的transform feedback机制实现粒子在三维流场中的运动
根据粒子位置计算相应纹理坐标采样速度场,并利用四阶Runge-Kutta积分计算粒子的新位置,同时增加粒子年龄,并通过transform feedback机制从GPU流水线上保存到本地端的缓存中,作为下一次运动的起点,从而达到更新粒子位置和年龄的目的,实现粒子在三维流场运动;
4.利用径向基函数设计密度球来控制粒子在三维流场中的分布密度粒子运动会导致粒子在某处的聚集和空洞,妨碍三维流场整体特征的表达。对于每个粒子,通过径向基函数生成一个中心灰度值大、灰度值随半径远离中心越来越小的球,不同球可叠加,这样粒子密度大的区域灰度值高,粒子密度低的区域灰度值小,没有粒子的区域灰度值为0,并将灰度值保存在三维纹理中,如此便生成了能够表达三维流场粒子分布的概率密度体。概率密度体是根据视截体生成的。通过在视截体中,按与裁剪面平行的方向插入32个平面,平面间距参照OpenGL视口深度精度的变化规律由近及远逐渐稀疏。将粒子球投影到离其最近的平面上,生成概率密度图。32张概率密度图组成概率密度体,保存到帧缓存中。由于OpenGL帧缓存数目限制为8张,在一个帧缓存的四个通道中存入4个平面。通过坐标平移的方式将两个平面渲染到一张概率密度图上,之后通过相应的方式采样,将概率密度体扩充为64层或更多,如图4所示。采样概率密度体,对每一个活跃粒子计算其所在位置的粒子密度,如果超过某一上限值时,有概率的随机剔除该粒子;被剔除的粒子将被赋予一个随机新位置,若新位置对应的粒子密度小于某一阈值,则将其置为活跃粒子,否则置为死亡粒子;对死亡粒子也赋予一个随机的新位置,进行同样的处理;
5.通过GPU的Tessellation细分曲面技术基于粒子位置生成流线
在GPU的Tessellation Control Shader中,以粒子的位置作为流线的起始点,将坐标归一化到0~1采样三维流场,通过四阶Runge-Kutta向后积分得到一个新位置,再以该位置为起点重复上述步骤,一步一步将流线上的关键点计算出来,其余点作为起始点的属性参数传递给Tessellation Evaluation Shader;然后利用Tessellation Evaluation Shader把传入的点作为骨干点细分出包围这些点的管线,作为最终的流线表达形式;生成流线时可在Tessellation Control Shader设置细分参数来控制流线上点的最大数目,当流线生长到三维流场边缘时可停止积分;按照用户通过传输函数设置的特征值与颜色的映射关系设置流线上每个点的透明度和颜色。

Claims (4)

1.基于GPU的可交互三维流场自适应分辨率动态可视化算法,具体包括以下基本步骤:
根据预渲染的数据体远、近平面矫正撒点位置,其特征在于:
根据数据范围生成数据体,分别渲染数据体的外面和内面得到数据体的近平面和远平面,颜色为归一化后的深度值;在视截体中均匀撒点,将撒点位置的深度值进行相同的归一化处理并与远、近平面纹理比较;将视线方向上不在数据体范围内的点,通过改变深度的方式移动到数据范围内;
基于视截体生成概率密度体控制流线密度,其特征在于:
将概率密度图按平行于裁剪面的方向插入到视截体中,其稀疏程度按照OpenGL深度精度变化规律由近到远逐渐稀疏;粒子生成的概率密度球投影在离其最近的概率密度图上;先平移再投影将概率密度图层数扩充数倍;多张概率密度图构成概率密度体;
通过传输函数调节流线的颜色和透明度,其特征在于:
将体绘制中的交互方法传输函数运用于矢量场可视化中,将流场特征值映射到颜色和不透明度上,供用户实时调节,突出感兴趣的特征。
2.根据权利要求1所述的基于GPU的可交互三维流场自适应分辨率动态可视化算法,其特征在于,所述步骤(1)中,视截体与数据范围有大量不重合区域,仅通过在视截体中撒点的方法将导致大量点撒在数据有效范围外,造成大量浪费,严重影响绘制效率;通过将数据体远、近平面渲染成深度纹理,撒点后采样深度纹理对点的位置并进行判断,对撒在数据体前、后的点,计算其距远裁剪面与近裁剪面之比,并以相同的比例重新放置在数据体远、近平面之间,提高撒点的有效率,提高算法效率。
3.根据权利要求1所述的基于GPU的可交互三维流场自适应分辨率动态可视化算法,其特征在于,所述步骤(2)中,根据视截体生成概率密度体,按照视口相机深度精度变化规律,离摄像机近的地方有更高的密度控制精度;通过将部分深度的粒子平移后再投影,把多层概率密度图投影到一张纹理上输出,突破帧渲染缓存数量的限制,生成更高精度的概率密度体。
4.根据权利要求1所述的基于GPU的可交互三维流场自适应分辨率动态可视化算法,其特征在于,所述步骤(3)中,通过传输函数方便用户调节流线的透明度和颜色,突出特征区域;自适应分辨率的三维流线提高了流线的密度,但对视觉造成严重的干扰,使特征区域不突出;传输函数使用户自由调节不同特征值对应的颜色和透明度,将不感兴趣区域进行透明处理,使感兴趣的区域凸显出来。
CN201710827686.5A 2017-09-14 2017-09-14 基于gpu的可交互三维流场自适应分辨率动态可视化方法 Active CN107633546B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710827686.5A CN107633546B (zh) 2017-09-14 2017-09-14 基于gpu的可交互三维流场自适应分辨率动态可视化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710827686.5A CN107633546B (zh) 2017-09-14 2017-09-14 基于gpu的可交互三维流场自适应分辨率动态可视化方法

Publications (2)

Publication Number Publication Date
CN107633546A true CN107633546A (zh) 2018-01-26
CN107633546B CN107633546B (zh) 2022-01-07

Family

ID=61099863

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710827686.5A Active CN107633546B (zh) 2017-09-14 2017-09-14 基于gpu的可交互三维流场自适应分辨率动态可视化方法

Country Status (1)

Country Link
CN (1) CN107633546B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108460823A (zh) * 2018-02-11 2018-08-28 浙江科澜信息技术有限公司 一种渲染三维场景模型的显示方法及系统
CN108665524A (zh) * 2018-04-28 2018-10-16 武汉大学 一种基于gpu的大范围离散流场体绘制方法
CN110647723A (zh) * 2019-08-14 2020-01-03 中国科学院计算机网络信息中心 基于原位可视化的粒子数据处理方法、装置和系统
CN112802174A (zh) * 2020-12-31 2021-05-14 珠江水利委员会珠江水利科学研究院 一种基于Web的风场三维动态可视化呈现方法
CN114119747A (zh) * 2021-11-23 2022-03-01 四川大学 一种基于pmd波前检测的三维流场流动显示方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104200529A (zh) * 2014-08-12 2014-12-10 电子科技大学 基于不确定性的三维目标体表面重构方法
US20150022525A1 (en) * 2013-07-19 2015-01-22 Adobe Systems Incorporated Triangle rasterization
CN104867186A (zh) * 2015-04-29 2015-08-26 中国海洋大学 基于gpu的可交互海洋三维流场动态可视化算法
CN105894438A (zh) * 2014-11-20 2016-08-24 中国海洋大学 基于gpu的多时间帧高感知度二维流线组织算法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150022525A1 (en) * 2013-07-19 2015-01-22 Adobe Systems Incorporated Triangle rasterization
CN104200529A (zh) * 2014-08-12 2014-12-10 电子科技大学 基于不确定性的三维目标体表面重构方法
CN105894438A (zh) * 2014-11-20 2016-08-24 中国海洋大学 基于gpu的多时间帧高感知度二维流线组织算法
CN104867186A (zh) * 2015-04-29 2015-08-26 中国海洋大学 基于gpu的可交互海洋三维流场动态可视化算法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
LI BO ET AL: "GPU Accelerated Marine Data Visualization Method", 《SPRINGER》 *
梅鸿辉 等: "一种全球尺度三维大气数据可视化系统", 《软件学报》 *
纪鹏波: "基于i4Ocean2.0的海洋仿真与三维流场可视化应用研究", 《中国博士学位论文全文数据库》 *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108460823A (zh) * 2018-02-11 2018-08-28 浙江科澜信息技术有限公司 一种渲染三维场景模型的显示方法及系统
CN108665524A (zh) * 2018-04-28 2018-10-16 武汉大学 一种基于gpu的大范围离散流场体绘制方法
CN108665524B (zh) * 2018-04-28 2021-09-24 武汉大学 一种基于gpu的大范围离散流场体绘制方法
CN110647723A (zh) * 2019-08-14 2020-01-03 中国科学院计算机网络信息中心 基于原位可视化的粒子数据处理方法、装置和系统
CN110647723B (zh) * 2019-08-14 2023-12-26 中国科学院计算机网络信息中心 基于原位可视化的粒子数据处理方法、装置和系统
CN112802174A (zh) * 2020-12-31 2021-05-14 珠江水利委员会珠江水利科学研究院 一种基于Web的风场三维动态可视化呈现方法
CN112802174B (zh) * 2020-12-31 2023-12-15 珠江水利委员会珠江水利科学研究院 一种基于Web的风场三维动态可视化呈现方法
CN114119747A (zh) * 2021-11-23 2022-03-01 四川大学 一种基于pmd波前检测的三维流场流动显示方法

Also Published As

Publication number Publication date
CN107633546B (zh) 2022-01-07

Similar Documents

Publication Publication Date Title
CN107633546A (zh) 基于gpu的可交互三维流场自适应分辨率动态可视化算法
WO2022121645A1 (zh) 一种教学场景中虚拟对象的真实感生成方法
CN104867186B (zh) 基于gpu的可交互海洋三维流场动态可视化算法
Ma et al. Binary volumetric convolutional neural networks for 3-D object recognition
CN112396703A (zh) 一种单图像三维点云模型重建方法
US20220301257A1 (en) High resolution neural rendering
CN104732585A (zh) 一种人体体型重构的方法及装置
CN105261059A (zh) 一种基于在屏幕空间计算间接反射高光的渲染方法
CN107392990B (zh) 渲染3d场景的全局照明
US20240078744A1 (en) Method and system for semantic-driven intelligent reconstruction of large-scene sparse light field
CN102999936A (zh) 一种海洋流场数据的三维流线体绘制算法
CN105231978A (zh) 一种引导式虚拟内窥镜导航方法
CN108615254A (zh) 基于树型结构网格矢量量化的点云渲染方法、系统及装置
CN104657333B (zh) 基于gpu的动态二维矢量场流线可视化算法
CN109509246B (zh) 一种基于自适应视线划分的光子图聚类方法
Luo et al. Quad-tree atlas ray casting: a gpu based framework for terrain visualization and its applications
CN106709977A (zh) 一种基于场景夜景图的光源自动排列方法
Lee et al. A bimodal empty space skipping of ray casting for terrain data
Baldacci et al. GPU-based approaches for shape diameter function computation and its applications focused on skeleton extraction
Lu Information-theoretic exploration for texture-based visualization
Pan et al. A visibility-based surface reconstruction method on the GPU
Hochstetter et al. Adaptive sampling for on-the-fly ray casting of particle-based fluids.
Hu et al. Image-based modeling of inhomogeneous single-scattering participating media
Zhang et al. Viewpoint estimation of image object based on parameters sharing network
Zhang et al. Vosh: Voxel-Mesh Hybrid Representation for Real-Time View Synthesis

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