CN117523127A - 基于Niagara粒子系统的城市空间数据可视化方法、装置和设备 - Google Patents
基于Niagara粒子系统的城市空间数据可视化方法、装置和设备 Download PDFInfo
- Publication number
- CN117523127A CN117523127A CN202311568557.0A CN202311568557A CN117523127A CN 117523127 A CN117523127 A CN 117523127A CN 202311568557 A CN202311568557 A CN 202311568557A CN 117523127 A CN117523127 A CN 117523127A
- Authority
- CN
- China
- Prior art keywords
- data
- space
- streamline
- niagara
- particle
- 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.)
- Pending
Links
- 239000002245 particle Substances 0.000 title claims abstract description 172
- SNICXCGAKADSCV-UHFFFAOYSA-N nicotine Chemical compound CN1CCCC1C1=CC=CN=C1 SNICXCGAKADSCV-UHFFFAOYSA-N 0.000 title claims abstract description 76
- 238000000034 method Methods 0.000 title claims abstract description 66
- 238000013079 data visualisation Methods 0.000 title claims abstract description 49
- 238000012800 visualization Methods 0.000 claims description 30
- 238000004458 analytical method Methods 0.000 claims description 18
- 238000004590 computer program Methods 0.000 claims description 14
- 238000005070 sampling Methods 0.000 claims description 10
- 238000003860 storage Methods 0.000 claims description 8
- 230000000007 visual effect Effects 0.000 abstract description 25
- 238000010276 construction Methods 0.000 abstract description 7
- 238000011161 development Methods 0.000 abstract description 5
- 238000010586 diagram Methods 0.000 description 11
- 238000004088 simulation Methods 0.000 description 8
- 239000000463 material Substances 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 238000009877 rendering Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000007405 data analysis Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 239000003344 environmental pollutant Substances 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 231100000719 pollutant Toxicity 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 238000003915 air pollution Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000000356 contaminant Substances 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 239000000779 smoke Substances 0.000 description 1
- 238000007794 visualization technique Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/05—Geographic models
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/005—General purpose rendering architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/04—Texture mapping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/50—Lighting effects
- G06T15/506—Illumination models
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Graphics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Remote Sensing (AREA)
- Image Generation (AREA)
Abstract
本申请涉及一种基于Niagara粒子系统的城市空间数据可视化方法、装置和设备。所述方法包括:解析预先设置的城市空间数据可视化任务,得到城市待分析区域上的待可视化数据;待可视化数据包括空间等值数据、空间体积数据和空间流线数据;城市待分析区域是通过虚幻引擎加载得到的;将待可视化数据编码为数据纹理,采用虚幻引擎的Niagara系统,根据数据纹理生成待可视化数据对应的网格粒子;根据网格粒子进行城市空间数据可视化。采用本方法能够针对不同类型的城市空间数据,提供更接近真实视觉效果的直观数据可视化方式,使决策者能够快速方便的理解复杂地理空间数据信息,为智慧城市建设发展的各个方面提供更具价值的建议。
Description
技术领域
本申请涉及数字孪生技术领域,特别是涉及一种基于Niagara粒子系统的城市空间数据可视化方法、装置和设备。
背景技术
在智慧城市的建设中,城市数字孪生项目除了城市建筑模型的可视化之外,物联网(IOT)设备和智能技术普及所带来的大量数据(如:城市交通流量、空气质量、5G网络信号强度等数据)的可视化分析也是城市数字孪生的重要部分。这些数据的大规模可视化分析可以为城市的规划设计提供有价值的建议,为城市基础设施的管理提供决策参考,为智慧城市数字化和信息化建设提供有效支撑。
传统数据可视化方法一般通过数据图表、平面热力图等方式呈现,这些方法仅局限于平面二维空间的可视化分析,无法对三维空间数据进行可视化呈现,且当数据规模过大时,图表可视化的方式存在数据面板指标堆积、数据冗余不直观的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种基于Niagara粒子系统的城市空间数据可视化方法、装置和设备。
一种基于Niagara粒子系统的城市空间数据可视化方法,所述方法包括:
解析预先设置的城市空间数据可视化任务,得到城市待分析区域上的待可视化数据;所述待可视化数据包括空间等值数据、空间体积数据和空间流线数据;所述城市待分析区域是通过虚幻引擎加载得到的;
将所述待可视化数据编码为数据纹理,采用所述虚幻引擎的Niagara系统,根据所述数据纹理生成所述待可视化数据对应的网格粒子;
根据所述网格粒子进行城市空间数据可视化。
在其中一个实施例中,还包括:分别将所述空间等值数据、所述空间体积数据和所述空间流线数据编码为数据纹理,采用虚幻引擎的Niagara系统,分别根据所述空间等值数据、所述空间体积数据和所述空间流线数据的数据纹理生成对应的网格粒子。
在其中一个实施例中,还包括:获取所述空间等值数据;所述空间等值数据包括多个二维等值线,每一闭合二维等值线对应一个等值区域;根据所述空间等值数据对应二维平面上的各个等值区域对应的数据值以及每一等值区域在二维平面上的坐标得到数据纹理;采用虚幻引擎的Niagara系统,根据所述空间等值数据的数据纹理生成对应的网格粒子。
在其中一个实施例中,还包括:将所述空间等值数据转换为栅格图像,根据所述空间等值数据对应二维平面上的各个等值区域对应的数据值和所述栅格图像得到灰度图像;根据每一等值区域在二维平面上的坐标将所述灰度图像上的数据折叠成指向垂直于所述二维平面的方向缩放的数据纹理。
在其中一个实施例中,还包括:获取所述空间体积数据,采用采样插值方法将所述空间体积数据折叠成二维数据纹理;采用虚幻引擎的Niagara系统,根据所述空间体积数据的数据纹理生成对应的网格粒子。
在其中一个实施例中,还包括:获取所述空间流线数据,采用采样插值方法将所述空间流线数据折叠成二维数据纹理;所述空间流线数据包括多个流线段;采用虚幻引擎的Niagara系统,根据所述数据纹理为流线的每个片段生成对应的粒子,得到一组由粒子构成的流线条,对所述流线条上的每一粒子进行网格化,得到粒子流线数据网格。
在其中一个实施例中,还包括:在所述流线条上的每一粒子周围生成多个顶点,得到所述粒子对应的顶点集;所述顶点集中的每一顶点与所述顶点集对应的粒子相连接;所述顶点集中顶点之间相互连接;将所述流线条上相邻粒子的对应顶点相连接,得到粒子流线数据网格。
一种基于Niagara粒子系统的城市空间数据可视化装置,所述装置包括:
任务解析模块,用于解析预先设置的城市空间数据可视化任务,得到城市待分析区域上的待可视化数据;所述待可视化数据包括空间等值数据、空间体积数据和空间流线数据;所述城市待分析区域是通过虚幻引擎加载得到的;
粒子生成模块,用于将所述待可视化数据编码为数据纹理,采用所述虚幻引擎的Niagara系统,根据所述数据纹理生成所述待可视化数据对应的网格粒子;
可视化模块,用于根据所述网格粒子进行城市空间数据可视化。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
解析预先设置的城市空间数据可视化任务,得到城市待分析区域上的待可视化数据;所述待可视化数据包括空间等值数据、空间体积数据和空间流线数据;所述城市待分析区域是通过虚幻引擎加载得到的;
将所述待可视化数据编码为数据纹理,采用所述虚幻引擎的Niagara系统,根据所述数据纹理生成所述待可视化数据对应的网格粒子;
根据所述网格粒子进行城市空间数据可视化。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
解析预先设置的城市空间数据可视化任务,得到城市待分析区域上的待可视化数据;所述待可视化数据包括空间等值数据、空间体积数据和空间流线数据;所述城市待分析区域是通过虚幻引擎加载得到的;
将所述待可视化数据编码为数据纹理,采用所述虚幻引擎的Niagara系统,根据所述数据纹理生成所述待可视化数据对应的网格粒子;
根据所述网格粒子进行城市空间数据可视化。
上述基于Niagara粒子系统的城市空间数据可视化方法、装置和设备,通过获取城市待分析区域上的待可视化数据,待可视化数据包括空间等值数据、空间体积数据和空间流线数据,将待可视化数据编码为数据纹理,接着,采用虚幻引擎的Niagara系统,根据数据纹理生成待可视化数据对应的网格粒子,通过虚幻引擎的Niagara粒子系统及模块脚本,对城市空间不同类型数据进行可视化分析,能够解决数据冗余不直观的问题,最后,根据网格粒子进行城市空间数据可视化,本发明通过图形数据批量处理不同粒子的演化方式,从而实现大规模的城市空间数据的可视化,本发明实施例,能够针对不同类型的城市空间数据,提供更接近真实视觉效果的直观数据可视化方式,使决策者能够快速方便的理解复杂地理空间数据信息,为智慧城市建设发展的各个方面提供更具价值的建议。
附图说明
图1为一个实施例中基于Niagara粒子系统的城市空间数据可视化方法的应用场景图;
图2为一个实施例中城市分析数据可视化的流程示意图;
图3为一个实施例中数据解析点V1、V2生成的粒子流线数据网格结构示意图;
图4为一个实施例中区域内空间等值数据的粒子可视化结果示意图;
图5为一个实施例中区域内空间体积数据的粒子可视化结果示意图;
图6为一个实施例中区域内空间流线数据的粒子可视化结果示意图;
图7为一个实施例中基于Niagara粒子系统的城市空间数据可视化装置的结构框图;
图8为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在一个实施例中,如图1所示,提供了一种基于Niagara粒子系统的城市空间数据可视化方法,包括以下步骤:
步骤102,解析预先设置的城市空间数据可视化任务,得到城市待分析区域上的待可视化数据。
待可视化数据包括空间等值数据、空间体积数据和空间流线数据。基于空间等值线数据集的可视化一般用在大范围内粗颗粒度的结果分析,如城市某区域的交通流量、噪音水平等的宏观分布情况,基于空间体积和空间流线数据的可视化一般用在小范围精细化的结果分析,如园区内新建设项目造成的空气污染及污染物流向、园区内5G网络信号的强度及空间分布情况等。需要可视化的数据一般由不同数据类型的传感器分析模拟产生。
城市待分析区域是通过虚幻引擎加载得到的。虚幻引擎(Unreal Engine,UE)能够用于创建视频游戏、模拟、虚拟现实和增强现实应用程序的开发工具,广泛用于游戏开发、电影制作、建筑可视化和其他实时交互性应用的开发。
步骤104,将待可视化数据编码为数据纹理,采用虚幻引擎的Niagara系统,根据数据纹理生成待可视化数据对应的网格粒子。
Niagara是虚幻引擎中的一种高级粒子系统,用于创建复杂的实时粒子效果。它提供了强大的粒子模拟和可视化工具,使开发人员能够生成各种视觉效果,包括火、烟雾、水、爆炸、魔法、天气效果和其他实时模拟。
步骤106,根据网格粒子进行城市空间数据可视化。
空间等值线数据通过在地形上叠加缩放的Niagara粒子来实现可视化,空间体积数据通过Niagara体积粒子的方式实现可视化,空间流线数据通过粒子流线网格实现可视化。
上述基于Niagara粒子系统的城市空间数据可视化方法中,通过获取城市待分析区域上的待可视化数据,待可视化数据包括空间等值数据、空间体积数据和空间流线数据,将待可视化数据编码为数据纹理,接着,采用虚幻引擎的Niagara系统,根据数据纹理生成待可视化数据对应的网格粒子,通过虚幻引擎的Niagara粒子系统及模块脚本,对城市空间不同类型数据进行可视化分析,能够解决数据冗余不直观的问题,最后,根据网格粒子进行城市空间数据可视化,本发明通过图形数据批量处理不同粒子的演化方式,从而实现大规模的城市空间数据的可视化,本发明实施例,能够针对不同类型的城市空间数据,提供更接近真实视觉效果的直观数据可视化方式,使决策者能够快速方便的理解复杂地理空间数据信息,为智慧城市建设发展的各个方面提供更具价值的建议。
在一个实施例中,如图2所示,提供了一种城市分析数据可视化的流程示意图,将待可视化数据编码为数据纹理,采用虚幻引擎的Niagara系统,根据数据纹理生成待可视化数据对应的网格粒子的步骤,包括:分别将空间等值数据、空间体积数据和空间流线数据编码为数据纹理,采用虚幻引擎的Niagara系统,分别根据空间等值数据、空间体积数据和空间流线数据的数据纹理生成对应的网格粒子。在本实施例中,待可视化数据指的是图2中的城市分析数据,获取需要分析的城市分析数据,并根据需要将其编码成矢量数据和数据纹理,在虚幻引擎中引入并创建数据纹理,根据虚幻引擎中已创建的数据纹理编写材质脚本生成可动态查找数据值的混合遮罩,将同样的纹理数据作为粒子可视化的基础,通过Niagara系统,根据粒子在三维空间中的位置及数据值改变粒子的颜色、大小、寿命等属性。
在一个实施例中,将空间等值数据编码为数据纹理,采用虚幻引擎的Niagara系统,根据空间等值数据的数据纹理生成对应的网格粒子的步骤,包括:获取空间等值数据;空间等值数据包括多个二维等值线,每一闭合二维等值线对应一个等值区域;根据空间等值数据对应二维平面上的各个等值区域对应的数据值以及每一等值区域在二维平面上的坐标得到数据纹理;采用虚幻引擎的Niagara系统,根据空间等值数据的数据纹理生成对应的网格粒子。
在本实施例中,基于二维等值线数据转化的栅格图像和编码的数据纹理以及虚幻引擎的Niagara系统进行三维空间等值线数据可视化方法的具体步骤包括:
101、获取所需可视化数据的二维等值线,数据集中的闭合曲线表示一个值恒定的区域,相邻曲线表示该值的固定变化;
102、使用FME(Feature Manipulate Engine,空间数据转换处理系统)将等值线数据转换为栅格图像,并将栅格图像打包成单个灰度图像以具有规范化值。所述灰度图写入了XY轴方向的二维平面所对应区域的数据值
103、解析灰度图像得到等值区域数据的坐标及对应数据值,将数据折叠成指向Z轴缩放且具有规范化值的灰度纹理,从而得到数据纹理;
104、扩展程序化地形材质,以便绘制与数据匹配的特定区域中的像素;
105、缩放数据纹理以匹配可用的地形的坐标,这部分匹配坐标的纹理数据是准确可用的数据,通过Niagara粒子系统创建Niagara Module脚本,动态访问数据纹理的每个像素并读取其规范化值,根据粒子更新时间动态修改粒子高度和颜色等属性;
106、基于可视化数据纹理和Niagara粒子脚本计算粒子在边界中0-1区间的相对位置,并查找包含数据位置信息及数据值的数据纹理对应的像素值,得到最终显示的可视化空间颜色数据。
需要说明的是,在数据纹理中没有可用数据或可用数据值很少的区域,可以把粒子杀掉以减少性能消耗。本实施例的空间等值线数据可视化方法相较一般平面等值线数据可视化的方法,通过引入立体空间Z轴方向的数据插值增量,利用Niagara粒子系统及Module脚本根据数据纹理在空间对应位置坐标生成单个具有颜色数据的网格粒子,并根据指向Z轴缩放的数据灰度纹理控制每个粒子Z轴方向上的偏移值。这种空间等值线数据的可视化效果,为数据可视化拓展了多维度的可视化数据值,通过网格粒子的空间可视化方式,使其在空间视觉效果上能表达的数据信息更详细全面,易于理解。同时,在性能层面,通过控制动态粒子数,可灵活地根据不同数据量规模场景,不同设备终端,优化性能消耗,以保持程序运行流畅度。
在一个实施例中,根据空间等值数据对应二维平面上的各个等值区域对应的数据值以及每一等值区域在二维平面上的坐标得到数据纹理的步骤,包括:将空间等值数据转换为栅格图像,根据空间等值数据对应二维平面上的各个等值区域对应的数据值和栅格图像得到灰度图像;根据每一等值区域在二维平面上的坐标将灰度图像上的数据折叠成指向垂直于二维平面的方向缩放的数据纹理。
在一个实施例中,将空间体积数据编码为数据纹理,采用虚幻引擎的Niagara系统,根据空间体积数据的数据纹理生成对应的网格粒子的步骤,包括:获取空间体积数据,采用采样插值方法将空间体积数据折叠成二维数据纹理;采用虚幻引擎的Niagara系统,根据空间体积数据的数据纹理生成对应的网格粒子。
在本实施例中,基于材质脚本及插值采样数据编码的数据纹理以及虚幻引擎的Niagara系统进行三维空间粒子数据可视化方法的具体步骤包括:
201、使用Python脚本编码数据纹理,即将三维数据折叠成二维纹理,此操作须将三维数据切成若干层二维纹理,再将每层纹理平铺在二维平面,平铺算法包括沿着Z轴插值数据,生成的二维纹理数据中,X、Y轴坐标相同的数据从纹理中的两个位置采样,对应数据中最近的两个Z轴坐标将这些数据内插以反映应该采样的精确Z坐标;
202、使用所述数据纹理,在虚幻引擎中通过材质脚本创建纹理的动态切面,基于当前切面表面的空间位置动态查找数据,通过编写蓝图脚本绑定数据,实时更新数据变化;
203、如105所述,将数据纹理用于粒子可视化的基础,通过虚幻引擎的Niagara系统,根据粒子在三维场景中的位置所对应的数据来改变粒子的颜色、大小、寿命等属性;
其中,201中将位置数据编码为数据纹理时,由于位置数据保存到纹理要求比一般用于计算机图形的纹理精度更高。为了正确编码数据,需要32位纹理。然而,虚幻引擎的标准函数不支持32位纹理的直接导入。因此本发明将32位纹理拆分为两个16位纹理后,再导入虚幻引擎,接着,使用当前支持32位纹理数据的Render Target将两个16位纹理合并为一个32位纹理。这个32位纹理的Render Target纹理可以直接从Niagara访问,提供所需的数据精度。
本发明的空间体积数据可视化方法相较于一般体积数据可视化方法,通过Niagara粒子对渲染底层的访问能力,可在前端直接访问UAV(无序访问资源的视图)和ComputeShader等需要底层HLSL代码的高级功能,并能帮助材质系统实现自身难以直观表达的能力(如:多个不同材质通过RenderTarget进行交互的能力)。在空间视觉表达上,通过蓝图脚本实时数据更新空间粒子的坐标、颜色、大小、寿命等属性的方式,真实模拟如空气质量等体积数据的动态效果。
在一个实施例中,将空间流线数据编码为数据纹理,采用虚幻引擎的Niagara系统,根据空间流线数据的数据纹理生成对应的网格粒子的步骤,包括:获取空间流线数据,采用采样插值方法将空间流线数据折叠成二维数据纹理;空间流线数据包括多个流线段;采用虚幻引擎的Niagara系统,根据数据纹理为流线的每个片段生成对应的粒子,得到一组由粒子构成的流线条,对流线条上的每一粒子进行网格化,得到粒子流线数据网格。
在一个实施例中,基于流线数据编码的数据纹理以及虚幻引擎Niagara系统,由粒子流线形成三维空间流线数据可视化的方法的具体步骤包括:
301、如201相同技术原理,将流线数据编码为数据纹理,通过虚幻引擎的Niagara粒子系统,GPU(Graphics Processing Unit,图形处理单元)可访问流线段的位置信息;
302、根据301所述数据纹理为流线的每个片段生成一个粒子,并将其放置在正确的位置和方向上,以形成一组由粒子构成的流线条;
303、程序化生成流线数据网格。解析每条流线(一组点的集合)的数据,为给定的流线条解析所有的点,然后在每个点周围生成一个网格。
其中,303所述程序化生成粒子流线数据网格的步骤包括:
S11.在流线的每个解析点周围生成顶点;
S12.在生成的顶点之间创建三角形;
S13.连接相邻解析点的对应顶点。
三维流线数据可视化的方法通常也包括使用C++生成程序网格体,即在三维场景中为每条流线数据创建一个颜色管线,但由于性能消耗大,这种方式仅适用于数量有限的静态流线数据,不适用大批量流线数据的高性能可视化场景。为了实现数千条流线数据的可视化,相较于程序网格构建数据可视化方法,本发明的粒子流线数据可视化方法,通过Niagara粒子系统的GPU发射器,可在GPU上同时大批量为每个单独的粒子运行一个单元,这些单元执行相同的计算公式,通过图形数据格式大批量给予其不同的输入值,就能在GPU中大规模单独演化这些粒子,因此GPU粒子带来的空间粒子流线数据可视化在性能上的提升十分显著,相同数据量的可视化构建时间能缩短一倍以上。如表1所示,提供了一种不同流线数据量下,程序流线和粒子流线两种方式的性能参数(Nvidia GeForce RTX 3070Ti的帧率参考)。
表1程序流线和粒子流线的性能对比结果
流线数据量 | 1010 | 4650 | 9068 | 13210 |
程序流线 | 83f/s | 21f/s | 8f/s | 4f/s |
粒子流线 | 200f/s | 83f/s | 28f/s | 19f/s |
程序流线和粒子流线具有互补的价值,因为程序生成的流线在近处有更高的视觉质量,但粒子生成的流线在大规模流线数据可视化中的表现更好,本实施例比较了程序流线和粒子流线两种数据可视化方式的性能消耗情况,提供了性能开销更具优势的粒子流线可视化方法,为特定区域内的大批量数据可视化提供了方案。
在一个实施例中,如图3所示,提供了一种数据解析点V1、V2生成的粒子流线数据网格结构示意图,对流线条上的每一粒子进行网格化,得到粒子流线数据网格包括:在流线条上的每一粒子周围生成多个顶点,得到粒子对应的顶点集;顶点集中的每一顶点与顶点集对应的粒子相连接;顶点集中顶点之间相互连接;将流线条上相邻粒子的对应顶点相连接,得到粒子流线数据网格。
在实施例中,如图3所示,从数据中解析了点V1,需要在点V1周围生成顶点。为此,暴露一个名为CapVertices的可修改值,表示点V1周围生成的顶点数量。使用极坐标系统,创建一个初始向量,将其围绕X轴旋转360/CapVertices度,以创建解析点所需要的顶点,生成顶点后,创建三角形来链接顶点,通过以逆时针的方式连接每三个顶点来覆盖解析点。对每个流线的所有解析点重复此过程。为了使网格外观更符合流线型,必须连接生成的属于解析点的不同顶点,然后,为了在两个流线端点之间创建网格,为顶点1,2,4和5生成一个平行四边形。
需要说明的是,为了使网格看起来平滑一致,这里以逆时针的方式连接顶点2,4,1和顶点2,5,4。通过对每个流线中所有解析点周围生成的顶点依次重复此连接,可以为整个流线创建一个连续网格,当解析顶点数CapVertices值等于3时,生成的网格体横截面是三角形,等于4时,生成的网格体横截面是矩形,顶点数CapVertices越大时,生成的顶点越多,所创建的网格越接近圆柱体,同时性能消耗会一定程度增加。
本发明通过不同的空间数据模拟结果的数据集(如某区域噪声、空气质量等模拟结果的数据集)来说明空间数据的可视化实施方式。
在一个具体实施例中,如图4所示,提供了一种区域内空间等值数据的粒子可视化结果示意图,利用包含一个城市区域噪音模拟结果的数据集来说明此空间数据的可视化结果。数据集包含不同强度噪音级别的封闭多边形矢量数据,将矢量数据编码成二维纹理,再将二维纹理在虚幻引擎中重新映射到自定义选择的色阶中来作为粒子的可视化效果呈现,通过Niagara粒子脚本,创建网格体渲染(此实施例中以创建box网格体作呈现说明),获取粒子位置及Z轴缩放,并覆盖在匹配区域的地形表面。如102所述,考虑到数据被打包进单个纹理中,且每个地块都应用了相同材质实例,因此需要在Niagara粒子系统的module脚本编辑器中引入一个自定义Texture功能,用来添加不同尺寸和颜色贴图的数据纹理。图4显示了空间等值线数据生成的色阶图像和灰度纹理的最终可视化结果。
在一个具体实施例中,如图5所示,提供了一种区域内空间体积数据的粒子可视化结果示意图,图5中不同灰度颗粒表示不同的污染物浓度指数,利用包含某小范围区域空气质量模拟结果的数据集来说明三维空间体积数据的可视化结果。将覆盖512×512×64体积的数据集编码为数据纹理,对应的z坐标方向的体积数据被折叠成二维纹理中的8×8网格,二维纹理的总分辨率要求为(512×8)×(512×8)=4196×4196。在Niagara粒子系统模块中完成从二维纹理中查找数据的计算,并根据查找计算的纹理数据在三维立体空间生成带有特定颜色、大小、寿命等属性的粒子,该系统模块的计算可放在GPU上运行。在三维空间生成粒子的方式有几种,本实施例考虑性能因素,采用在立体空间随机生成粒子的方式,同时设定阈值使它们在特定时间消失,从而可以根据性能要求轻松改变用于可视化数据的粒子总数。
在一个具体实施例中,如图6所示,提供了一种区域内空间流线数据的粒子可视化结果示意图,通过空间流线数据集来说明流线数据的可视化结果。通过这种方法,可以获得一万多条流线的实时性能,每条流线最多有一千个线段,对应数百万个数据线段。
本发明提供了一种以栅格和矢量数据格式,通过虚幻引擎的Niagara粒子系统及模块脚本,对城市空间不同类型数据进行可视化分析的工作流。这种工作流以一种提供真实环境的方式实现数据可视化,相比于现有一般使用数据图表及平面热力图的可视化方式具有的优点和效果包括:
1.解决了数据冗余不直观的问题,针对不同类型的城市空间数据,提供了更接近真实视觉效果的直观数据可视化方式,使决策者能够快速方便的理解复杂地理空间数据信息;
2.通过图形数据批量处理不同粒子的演化方式,为大规模的城市空间数据(如:城市空气质量、污染物流向、噪音指数、交通流量、道路占用率等)的可视化提供了新的解决方案;
3.在较低的计算机体系结构层面上,提供了一种基于GPU渲染管线的粒子动态更新方法,极大降低大规模不同类型空间数据可视化的性能消耗;
4.所提供的城市空间数据可视化方法应用场景广泛,可以扩展到多个行业(如:环境治理、交通管控、能耗管理、水利建设等),为智慧城市建设发展的各个方面提供更具价值的建议。
应该理解的是,虽然图1的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图7所示,提供了一种基于Niagara粒子系统的城市空间数据可视化装置,包括:任务解析模块702、粒子生成模块704和可视化模块706,其中:
任务解析模块702,用于解析预先设置的城市空间数据可视化任务,得到城市待分析区域上的待可视化数据;待可视化数据包括空间等值数据、空间体积数据和空间流线数据;城市待分析区域是通过虚幻引擎加载得到的;
粒子生成模块704,用于将待可视化数据编码为数据纹理,采用虚幻引擎的Niagara系统,根据数据纹理生成待可视化数据对应的网格粒子;
可视化模块706,用于根据网格粒子进行城市空间数据可视化。
在其中一个实施例中,还用于分别将空间等值数据、空间体积数据和空间流线数据编码为数据纹理,采用虚幻引擎的Niagara系统,分别根据空间等值数据、空间体积数据和空间流线数据的数据纹理生成对应的网格粒子。
在其中一个实施例中,还用于获取空间等值数据;空间等值数据包括多个二维等值线,每一闭合二维等值线对应一个等值区域;根据空间等值数据对应二维平面上的各个等值区域对应的数据值以及每一等值区域在二维平面上的坐标得到数据纹理;采用虚幻引擎的Niagara系统,根据空间等值数据的数据纹理生成对应的网格粒子。
在其中一个实施例中,还用于将空间等值数据转换为栅格图像,根据空间等值数据对应二维平面上的各个等值区域对应的数据值和栅格图像得到灰度图像;根据每一等值区域在二维平面上的坐标将灰度图像上的数据折叠成指向垂直于二维平面的方向缩放的数据纹理。
在其中一个实施例中,还用于获取空间体积数据,采用采样插值方法将空间体积数据折叠成二维数据纹理;采用虚幻引擎的Niagara系统,根据空间体积数据的数据纹理生成对应的网格粒子。
在其中一个实施例中,还用于获取空间流线数据,采用采样插值方法将空间流线数据折叠成二维数据纹理;空间流线数据包括多个流线段;采用虚幻引擎的Niagara系统,根据数据纹理为流线的每个片段生成对应的粒子,得到一组由粒子构成的流线条,对流线条上的每一粒子进行网格化,得到粒子流线数据网格。
在其中一个实施例中,还用于在流线条上的每一粒子周围生成多个顶点,得到粒子对应的顶点集;顶点集中的每一顶点与顶点集对应的粒子相连接;顶点集中顶点之间相互连接;将流线条上相邻粒子的对应顶点相连接,得到粒子流线数据网格。
关于基于Niagara粒子系统的城市空间数据可视化装置的具体限定可以参见上文中对于基于Niagara粒子系统的城市空间数据可视化方法的限定,在此不再赘述。上述基于Niagara粒子系统的城市空间数据可视化装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图8所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于Niagara粒子系统的城市空间数据可视化方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图8中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行计算机程序时实现上述实施例中方法的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述实施例中方法的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本发明的保护范围应以所附权利要求为准。
Claims (10)
1.一种基于Niagara粒子系统的城市空间数据可视化方法,其特征在于,所述方法包括:
解析预先设置的城市空间数据可视化任务,得到城市待分析区域上的待可视化数据;所述待可视化数据包括空间等值数据、空间体积数据和空间流线数据;所述城市待分析区域是通过虚幻引擎加载得到的;
将所述待可视化数据编码为数据纹理,采用所述虚幻引擎的Niagara系统,根据所述数据纹理生成所述待可视化数据对应的网格粒子;
根据所述网格粒子进行城市空间数据可视化。
2.根据权利要求1所述的方法,其特征在于,所述将所述待可视化数据编码为数据纹理,采用虚幻引擎的Niagara系统,根据所述数据纹理生成所述待可视化数据对应的网格粒子的步骤,包括:
分别将所述空间等值数据、所述空间体积数据和所述空间流线数据编码为数据纹理,采用虚幻引擎的Niagara系统,分别根据所述空间等值数据、所述空间体积数据和所述空间流线数据的数据纹理生成对应的网格粒子。
3.根据权利要求2所述的方法,其特征在于,将所述空间等值数据编码为数据纹理,采用虚幻引擎的Niagara系统,根据所述空间等值数据的数据纹理生成对应的网格粒子的步骤,包括:
获取所述空间等值数据;所述空间等值数据包括多个二维等值线,每一闭合二维等值线对应一个等值区域;
根据所述空间等值数据对应二维平面上的各个等值区域对应的数据值以及每一等值区域在二维平面上的坐标得到数据纹理;
采用虚幻引擎的Niagara系统,根据所述空间等值数据的数据纹理生成对应的网格粒子。
4.根据权利要求3所述的方法,其特征在于,所述根据所述空间等值数据对应二维平面上的各个等值区域对应的数据值以及每一等值区域在二维平面上的坐标得到灰度纹理的步骤,包括:
将所述空间等值数据转换为栅格图像,根据所述空间等值数据对应二维平面上的各个等值区域对应的数据值和所述栅格图像得到灰度图像;
根据每一等值区域在二维平面上的坐标将所述灰度图像上的数据折叠成指向垂直于所述二维平面的方向缩放的数据纹理。
5.根据权利要求2所述的方法,其特征在于,将所述空间体积数据编码为数据纹理,采用虚幻引擎的Niagara系统,根据所述空间体积数据的数据纹理生成对应的网格粒子的步骤,包括:
获取所述空间体积数据,采用采样插值方法将所述空间体积数据折叠成二维数据纹理;
采用虚幻引擎的Niagara系统,根据所述空间体积数据的数据纹理生成对应的网格粒子。
6.根据权利要求2所述的方法,其特征在于,将所述空间流线数据编码为数据纹理,采用虚幻引擎的Niagara系统,根据所述空间流线数据的数据纹理生成对应的网格粒子的步骤,包括:
获取所述空间流线数据,采用采样插值方法将所述空间流线数据折叠成二维数据纹理;所述空间流线数据包括多个流线段;
采用虚幻引擎的Niagara系统,根据所述数据纹理为流线的每个片段生成对应的粒子,得到一组由粒子构成的流线条,对所述流线条上的每一粒子进行网格化,得到粒子流线数据网格。
7.根据权利要求6所述的方法,其特征在于,对所述流线条上的每一粒子进行网格化,得到粒子流线数据网格包括:
在所述流线条上的每一粒子周围生成多个顶点,得到所述粒子对应的顶点集;所述顶点集中的每一顶点与所述顶点集对应的粒子相连接;所述顶点集中顶点之间相互连接;
将所述流线条上相邻粒子的对应顶点相连接,得到粒子流线数据网格。
8.一种基于Niagara粒子系统的城市空间数据可视化装置,其特征在于,所述装置包括:
任务解析模块,用于解析预先设置的城市空间数据可视化任务,得到城市待分析区域上的待可视化数据;所述待可视化数据包括空间等值数据、空间体积数据和空间流线数据;所述城市待分析区域是通过虚幻引擎加载得到的;
粒子生成模块,用于将所述待可视化数据编码为数据纹理,采用所述虚幻引擎的Niagara系统,根据所述数据纹理生成所述待可视化数据对应的网格粒子;
可视化模块,用于根据所述网格粒子进行城市空间数据可视化。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311568557.0A CN117523127A (zh) | 2023-11-22 | 2023-11-22 | 基于Niagara粒子系统的城市空间数据可视化方法、装置和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311568557.0A CN117523127A (zh) | 2023-11-22 | 2023-11-22 | 基于Niagara粒子系统的城市空间数据可视化方法、装置和设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117523127A true CN117523127A (zh) | 2024-02-06 |
Family
ID=89745306
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311568557.0A Pending CN117523127A (zh) | 2023-11-22 | 2023-11-22 | 基于Niagara粒子系统的城市空间数据可视化方法、装置和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117523127A (zh) |
-
2023
- 2023-11-22 CN CN202311568557.0A patent/CN117523127A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112884875B (zh) | 图像渲染方法、装置、计算机设备和存储介质 | |
Vanegas et al. | Modelling the appearance and behaviour of urban spaces | |
Greß et al. | GPU‐based collision detection for deformable parameterized surfaces | |
Kurzion et al. | Space deformation using ray deflectors | |
CN113593051B (zh) | 一种实景可视化方法及大坝可视化方法及计算机设备 | |
CN110428504B (zh) | 文本图像合成方法、装置、计算机设备和存储介质 | |
Wang et al. | Automatic shader simplification using surface signal approximation | |
Guerrero et al. | 3D visualisation of underground pipelines: Best strategy for 3D scene creation | |
CN111091620B (zh) | 基于图形学的地图动态路网处理方法及系统、计算机设备 | |
Falk et al. | Interactive gpu-based visualization of large dynamic particle data | |
CN112365598A (zh) | 倾斜摄影数据转换三维数据的方法、装置及终端 | |
CN113157988B (zh) | 由ofd格式文件表示地理信息的方法和装置 | |
Masood et al. | High‐performance virtual globe GPU terrain rendering using game engine | |
CN116206068B (zh) | 基于真实数据集的三维驾驶场景生成与构建方法及装置 | |
Schäfer et al. | Local Painting and Deformation of Meshes on the GPU | |
She et al. | An efficient method for rendering linear symbols on 3D terrain using a shader language | |
Koca et al. | A hybrid representation for modeling, interactive editing, and real-time visualization of terrains with volumetric features | |
CN117523127A (zh) | 基于Niagara粒子系统的城市空间数据可视化方法、装置和设备 | |
Tan et al. | GPU based contouring method on grid DEM data | |
Li | Real-world large-scale terrain model reconstruction and real-time rendering | |
Amara et al. | A GPU Tile-Load-Map architecture for terrain rendering: theory and applications | |
CN114020390A (zh) | Bim模型显示方法、装置、计算机设备和存储介质 | |
Đurđević et al. | Domino tiling: a new method of real-time conforming mesh construction for rendering changeable height fields | |
Masood et al. | A novel method for adaptive terrain rendering using memory-efficient tessellation codes for virtual globes | |
Amiraghdam et al. | LOOPS: LOcally Optimized Polygon Simplification |
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 |