矢量场数据的可视化方法与流程

文档序号:26847777发布日期:2021-10-09 00:57阅读:563来源:国知局
矢量场数据的可视化方法与流程

1.本公开的实施例一般涉及数据拓扑领域,并且更具体地,涉及一种矢量场数据的可视化方法、装置、设备和计算机可读存储介质。


背景技术:

2.矢量是一种既有大小又有方向的量纲,矢量场的数据一般都具有复杂的拓扑关系和较高的维数,如温度、密度、压强等标量,速度、重力等矢量,还有涡流张力等张量。这些物理量往往定义在离散的不规则网格的结点、中心或表面上。根据空间数据处理的特点和可视化的基本技术,将矢量场数据的几何图形表示方法通常包括点场数据表示、线场数据表示和面场数据等。
3.但上述传统的矢量场数据的可视化只是针对较少数据量或较小范围数据内的可视化表现较好,针对大范围三维矢量场数据的情况,数据处理及可视化处理的时间会成几何倍的增加,无法满足实时可视化的需求。


技术实现要素:

4.根据本公开的实施例,提供了一种矢量场数据的可视化方案。
5.在本公开的第一方面,提供了一种矢量场数据的可视化方法。该方法包括:
6.获取矢量场数据;
7.将所述矢量场数据的拓扑结构转化为预设的拓扑结构;之前/之后/同时,对所述矢量场数据进行过滤,提取所述矢量场数据的特征信息;所述特征信息包括矢量的大小、方向和位置信息;
8.根据所述矢量场数据的特征信息,将已转化为预设拓扑结构的矢量场数据转化为可视化的几何数据。
9.进一步地,所述将所述矢量场数据的拓扑结构转化为预设的拓扑结构包括:
10.通过数据组织方法将所述矢量场数据的拓扑结构转化为预设的拓扑结构;所述数据组织方法包括六面体体元或四面体体元的数据组织方法。
11.进一步地,所述根据所述矢量场数据的特征信息,将已转化为预设拓扑结构的矢量场数据转化为可视化的几何数据包括:
12.通过点图标法和/或矢量线法对所述已转化为预设拓扑结构的矢量场数据进行基于几何形状的映射,得到可视化的矢量和/或矢量场映射图;和/或
13.通过线积分卷积的方法对所述已转化为预设拓扑结构的矢量场数据进行基于纹理的映射,得到可视化的纹理映射图。
14.进一步地,所述通过线积分卷积的方法对所述已转化为预设拓扑结构的矢量场数据进行基于纹理的映射,得到可视化的纹理映射图包括:
15.根据所述矢量场数据的特征信息,生成纹理图像;
16.将所述预设形式的矢量场数据网格化,生成网格数据;所述网格数据包括n个网格
点,其中,每个网格点分别对应所述纹理图像的一个像素点;所述n为大于等于1的正整数;
17.根据所述网格点和所述像素点的对应关系,将所述纹理图像映射到所述网格数据上;
18.对所述网格数据中的每个网格点分别进行流线跟踪,得到每个网格点的流线;
19.对所述每个网格点的流线进行卷积,得到与所述流线对应的像素点的颜色值;
20.生成可视化的纹理映射图。
21.进一步地,所述对所述网格数据中的每个网格点分别进行流线跟踪包括:
22.对所述网格数据中的每个网格点,分别通过变长的四阶runge

kutta方程进行流程跟踪。
23.进一步地,所述对所述网格数据中的每个网格点分别进行流线跟踪,得到每个网格点的流线;对所述每个网格点的流线进行卷积,得到与所述流线对应的像素点的颜色值包括:
24.通过并行的方式对所述网格数据中的每个网格点进行流线跟踪,得到每个网格点的流线;
25.通过并行的方式对所述每个网格点的流线进行卷积,得到与所述流线对应的像素点的颜色值,生成可视化的纹理映射图。
26.进一步地,所述对所述网格数据中的每个网格点分别进行流线跟踪,得到每个网格点的流线;对所述每个网格点的流线进行卷积,得到与所述流线对应的像素点的颜色值包括:
27.通过并行的方式分别对每个网格点进行流线跟踪和卷积,生成可视化的纹理映射图。
28.在本公开的第二方面,提供了一种矢量场数据的可视化装置。该装置包括:
29.获取模块,用于获取矢量场数据;
30.处理模块,用于将所述矢量场数据的拓扑结构转化为预设的拓扑结构;之前/之后/同时,对所述矢量场数据进行过滤,提取所述矢量场数据的特征信息;所述特征信息包括矢量的大小、方向和位置信息;
31.显示模块,用于根据所述矢量场数据的特征信息,将已转化为预设拓扑结构的矢量场数据转化为可视化的几何数据。
32.在本公开的第三方面,提供了一种电子设备。该电子设备包括:存储器和处理器,所述存储器上存储有计算机程序,所述处理器执行所述程序时实现如以上所述的方法。
33.在本公开的第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现如根据本公开的第一方面的方法。
34.本技术实施例提供的矢量场数据的可视化方法,通过获取矢量场数据;将所述矢量场数据的拓扑结构转化为预设的拓扑结构;之前/之后/同时,对所述矢量场数据进行过滤,提取所述矢量场数据的特征信息;所述特征信息包括矢量的大小、方向和位置信息;根据所述矢量场数据的特征信息,将已转化为预设拓扑结构的矢量场数据转化为可视化的几何数据,实现了大范围三维矢量场的实时可视化,同时通过线积分卷积算法大幅提高了计算效率。
35.应当理解,发明内容部分中所描述的内容并非旨在限定本公开的实施例的关键或
重要特征,亦非用于限制本公开的范围。本公开的其它特征将通过以下的描述变得容易理解。
附图说明
36.结合附图并参考以下详细说明,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。在附图中,相同或相似的附图标记表示相同或相似的元素,其中:
37.图1示出了根据本公开的实施例的矢量场数据的可视化方法的流程图;
38.图2示出了根据本公开的实施例的基于箭头的矢量映射图;
39.图3示出了根据本公开的实施例的基于流线的矢量场映射图;
40.图4示出了根据本公开的实施例的矢量场数据的可视化装置的方框图;
41.图5示出了能够实施本公开的实施例的示例性电子设备的方框图。
具体实施方式
42.为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的全部其他实施例,都属于本公开保护的范围。
43.另外,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
44.图1示出了根据本公开实施例的矢量场数据的可视化方法100的流程图。方法100包括:
45.s110,获取矢量场数据。
46.所述矢量场数据可以为本地预先存储的,也可以为通过与服务器(本公开的执行主体)连接的电子设备利用有线或无线方式获取的。
47.在一些实施例中,所述矢量场数据(原始数据)来自于数值计算或测量的结果。
48.进一步地,由于计算或测量结果的多样性,所以所述矢量场数据的类型通常比较复杂。即,所述矢量场数据具有的拓扑结构复杂和数据量庞大的特点。
49.s120,将所述矢量场数据的拓扑结构转化为预设的拓扑结构;之前/之后/同时,对所述矢量场数据进行过滤,提取所述矢量场数据的特征信息。
50.因为矢量场数据通常比较复杂,不利于后续步骤的进行,因此,需要先对获取的矢量场数据进行预处理。即,将所述矢量场数据的拓扑结构转化为预设的拓扑结构
51.在一些实施例中,采用多规则的有效过滤方法对所述矢量场数据进行预处理。
52.具体地,针对所述矢量场数据拓扑结构复杂的特点,采用六面体体元或四面体体元的数据组织方法,将复杂多样的拓扑结构转换为预设的拓扑结构。所述预设的拓扑结构为根据需求预先设定的便于后续处理的拓扑结构。
53.进一步地,所述六面体体元数据组织方法,用于将规则的和结构化的不规则矢量数据转换为预设的拓扑结构;
54.所述四面体体元的数据组织方法,用于将上述六面体体元数据组织方法不能转换
的矢量数据转化为预设的拓扑结构。
55.进一步地,所述四面体体元的数据组织适用于拓扑结构任意复杂的数据场,但是对于规则的和结构化的不规则矢量数据的转换效果不如所述六面体体元数据组织方法。因此,对于规则的和结构化的不规则矢量数据的拓扑结构转换通常采用六面体体元数据组织方法。
56.针对数据量庞大的特点,采用特征过滤的方法对所述矢量场数据进行过滤,提取出所述矢量场数据中的特征信息,过滤掉无用信息(例如温度、密度、压强等标量和/或涡流张力等张量)。所述矢量场的特征特性信息包括后续映射(计算)步骤中需要用到的信息,包括矢量的大小、方向和/或位置等。
57.进一步地,所述特征过滤方法的规则,可根据应用场景进行预先设定,以便根据预先设定的规则对所述矢量场数据进行过滤,得到所需的矢量场特征信息。
58.在一些实施例中,所述特征过滤法包括:特征规则制定、特征学习、特征比对等,用于将对比结果中不符合特征的数据进行剔除。
59.需要说明的是,上述对所述矢量场数据进行过滤的步骤,可在步骤将所述矢量场数据的拓扑结构转化为预设的拓扑结构之前/之后/同时进行。
60.s130,根据所述矢量场数据的特征信息,将已转化为预设拓扑结构的矢量场数据转化为可视化的几何数据。
61.矢量场数据映射是矢量场可视化的核心,其目的是将已转化为预设拓扑结构的矢量数据转化为可通过图形或图像予以显示的几何数据。
62.在一些实施例中,通过点图标法和/或矢量线法对所述已转化为预设拓扑结构的矢量场数据进行基于几何形状(几何定位)的映射,得到可视化的矢量和/或矢量场映射图。
63.具体地,所述点图标法包括:
64.对于每一采样点,用具有大小和方向的图标映射采样点处矢量的大小和方向,常见的有箭头、锥体、有向线段等。所述采样点为用户根据需求预先设定的。
65.进一步地,运用箭头对矢量场进行映射时,如图2所示,用箭头的长短来表示矢量的大小,用箭头的方向来表示矢量的方向,并且可以用箭头的颜色来表示矢量场内的另一场值。
66.所述矢量线法包括:
67.在矢量场中,线上所有质点的瞬时速度都与之相切的线称为场线,在流体力学中,速度矢量场中的场线称为流线。流线与欧拉描述方法相联系。欧拉方法是设法在空间中的每一点上描述出流体随时间变化的状况,因为在不同时刻将有不同的流体质点经过空间某固定点,采用速度矢量来描写固定点上流体运动的变化规律,如图3所示。
68.流体质点的运动规律在数学上可表示为下列矢量形式:
69.v=v(r,t);
70.其中,所述v为速度矢量;
71.所述r为矢径;
72.所述t为时间,积分时作为常数。
73.在直角坐标系中为:
[0074][0075]
其中,x、y、z、t为欧拉变数;
[0076]
当x、y、z固定,t进行改变时,上式中的函数代表空间中某固定点速度随时间的变化规律。
[0077]
流线是同一时刻不同质点所组成的曲线,用于描述该时刻不同流体质点的运动方向。通过数值积分的方法得到流线,流线的方程为:
[0078][0079]
其中,d为速度矢量;
[0080]
在一些实施例中,为了提高计算精度,采用二阶runge

kutta方法计算积分。
[0081]
在一些实施例中,通过线积分卷积的方法对所述已转化为预设拓扑结构的矢量场数据进行基于纹理的映射,得到可视化的纹理映射图。
[0082]
纹理空间在图像空间进行,具有图像空间的连续性,可生成具有图像空间分辨率的细致图形。基于纹理的可视化图像看表现出一定的几何形状,并且通过颜色的有序排列,表达出一定的方向信息,克服了传统的基于颜色的映射方法无法揭示方向的缺点。
[0083]
在本公开中,采用线积分卷积的方法进行矢量映射。线积分卷积用滤波器沿流线卷积白噪声图像,能够可视化流线的方向性,反映整个矢量场的结构。同时克服了箭头、流线等可视化图像的混乱现象。即,能够更好的反应矢量场的特征。
[0084]
具体地:
[0085]
a,根据所述矢量场的特征信息绘制一幅纹理图像;
[0086]
b,将所述矢量场网格化,生成网格数据;所述网格数据包括n个网格点,其中,每个网格点分别对应所述纹理图像的一个像素点;所述n为大于等于1的正整数;
[0087]
c,根据所述网格点和所述像素点的对应关系,将所述纹理图像映射到所述网格数据上;
[0088]
d,对所述网格数据中的每个网格点,分别通过变长的四阶runge

kutta方程进行流程跟踪,得到每个网格点的流线;
[0089]
对所述每个网格点的流线进行卷积,得到与所述流线对应的像素点的颜色值;
[0090]
具体地,
[0091]
线积分卷积使用一维低通滤波器k(w)作为卷积核沿流线卷积自噪声图像合成纹理。输出纹理的每个像素值均通过积分卷积得到。
[0092]
基于该像素沿矢量正、反方向对称积分得到流线,将流线上所有像素对应静输入噪声值按卷积核参与卷积,结果作为输出纹理的像素值(颜色值)。输入的白噪声图像各点不相关,而线积分卷积纹理在流线方向上相关,可以显示矢量场的方向信息。
[0093]
每个像素点的纹理强度(颜色值),可通过如下公式计算得到:
[0094][0095]
其中,所述σ(s)表示流线;
[0096]
所述s表示弧长;
[0097]
所述s0表示弧长初始值;
[0098]
所述ds表示积分增量;
[0099]
线积分卷积纹理在点x0=σ(s)的强度为i(x0);
[0100]
所述为归一化参数;
[0101]
所述t为白噪声;
[0102]
所述k为滤波器;
[0103]
所述l为滤波器长度。
[0104]
进一步地,采用盒式卷积核函数计算,则上式的离散形式为:
[0105][0106]
其中,所述t(x
i
)为流线上各离散点噪声纹理值;
[0107]
所述n为流线上的离散点个数;
[0108]
根据计算得到的每一个像素点的颜色值对图像进行显示。
[0109]
在一些实施例中,由于每个网格点的流线跟踪运算是相互独立的,因此各个网格点的流线跟踪,可基于gpu的并行计算能力并行执行。即,步骤对所述网格数据中的每个网格点分别进行流线跟踪,得到每个网格点的流线,可并行执行。
[0110]
在一些实施例中,由于网格点的流线卷积计算也是相互独立的,因此也可以基于gpu的并行计算能力并行处理。即,步骤对所述每个网格点的流线进行卷积,得到与所述流线对应的像素点的颜色值,可并行处理。
[0111]
在一些实施例中,由于每个网格点的流线跟踪和卷积计算都是相互独立的,而且两个运算是连续的。即,对每个网格点都是先流线跟踪,然后根据流线跟踪得到的流线进行卷积计算。因此,可以将这两个运算看成一体,利用gpu的并行计算能力并行处理,加速大范围矢量场可视化的效果。
[0112]
根据本公开的实施例,实现了以下技术效果:
[0113]
本公开通过多规则的有效过滤方法对原始数据进行过滤,减少冗余或其它数据对可视化的干扰。同时,在本公开中每个网格点中的各种运算(流线卷积)相互独立,保证了流线跟踪和卷积计算之间互不干扰且连续进行,大幅提高了计算效率,可适用于拓扑结构任意复杂的数据场。
[0114]
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本公开并不受所描述的动作顺序的限制,因为依据本公开,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于可选实施例,所涉及的动作和模块并不一定是本公开所必须的。
[0115]
以上是关于方法实施例的介绍,以下通过装置实施例,对本公开所述方案进行进一步说明。
[0116]
图4示出了根据本公开的实施例的一种矢量场数据的可视化装置400的方框图。如图4所示,装置400包括:
[0117]
获取模块410,用于获取矢量场数据;
[0118]
处理模块420,用于将所述矢量场数据的拓扑结构转化为预设的拓扑结构;之前/之后/同时,对所述矢量场数据进行过滤,提取所述矢量场数据的特征信息;所述特征信息包括矢量的大小、方向和位置信息;
[0119]
显示模块430,用于根据所述矢量场数据的特征信息,将已转化为预设拓扑结构的矢量场数据转化为可视化的几何数据。
[0120]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,所述描述的模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0121]
图5示出了可以用来实施本公开的实施例的电子设备500的示意性框图。如图所示,设备500包括中央处理单元(cpu)501,其可以根据存储在只读存储器(rom)502中的计算机程序指令或者从存储单元508加载到随机访问存储器(ram)503中的计算机程序指令,来执行各种适当的动作和处理。在ram503中,还可以存储设备500操作所需的各种程序和数据。cpu501、rom 502以及ram 503通过总线504彼此相连。输入/输出(i/o)接口505也连接至总线504。
[0122]
设备500中的多个部件连接至i/o接口505,包括:输入单元506,例如键盘、鼠标等;输出单元507,例如各种类型的显示器、扬声器等;存储单元508,例如磁盘、光盘等;以及通信单元509,例如网卡、调制解调器、无线通信收发机等。通信单元509允许设备500通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
[0123]
处理单元501执行上文所描述的各个方法和处理。例如,在一些实施例中,方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元508。在一些实施例中,计算机程序的部分或者全部可以经由rom 502和/或通信单元509而被载入和/或安装到设备500上。当计算机程序加载到ram 503并由cpu 501执行时,可以执行上文描述的方法的一个或多个步骤。备选地,在其他实施例中,cpu 501可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行方法。
[0124]
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、芯片上系统的系统(soc)、负载可编程逻辑设备(cpld)等等。
[0125]
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
[0126]
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可
读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd

rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
[0127]
此外,虽然采用特定次序描绘了各操作,但是这应当理解为要求这样操作以所示出的特定次序或以顺序次序执行,或者要求所有图示的操作应被执行以取得期望的结果。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实现中。相反地,在单个实现的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实现中。
[0128]
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。
[0129]
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式,本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1