《基于特征的流场可视化》
一、首先,陶钧老师对流场及流场可视化的概念做了一个简要的介绍:
1、基于特征的显性方法:
- 临界点分类、检测、尺度及稳定性
- 特征追踪
- 可视化方法举例
2、基于特征的隐性方法
- 基于重要性度量
- 基于相似性度量
流场的例子车的风流、烟的雾流、血管里的血液
3、流场和向量场的区别:
向量场:从空间的一个点到向量的一个映射
流场:从点和时间到点的映射
他们在大多数情况下可以转换:如果有一阶微分存在的话,流线上面的点求导可以得到向量场,对向量场求积分可以得到流场。
稳定的流场:不随时间改变流场
非稳定的流场:会随时间改变的流场
4、流场可视化的两种方法
积分曲线:在向量场中采用粒子追踪产生
在稳定流场中的轨迹叫做流线
在非稳定流场中的轨迹叫做迹线
线积分卷积(LIC):
沿流线段对图像(噪点图)进行卷积
模拟现实实验中对流场的可视化
两种方法的对比:
积分曲线的特点
稀疏:描述具体线/面/特征信息
可能遗漏空白区域的流场信息
线积分卷积(LIC)的特点
密集:相对完整的流场信息
三维下存在严重的遮挡问题
5、通过流场可视化我们希望获取的信息
从局部的角度来说,给一个点我们希望知道这个点的流向到底往哪流的;从全局的角度来说的话,在空间中任意给一个,我想知道这个会去到那些区域。为了观察到这些信息流向、流态、特征等,流线密度是很重要的
如何观察到这些特征:
- 去除遮挡
- 需要展示小尺度特征
- 什么是流场特征
- 与物理现象有关的特征,如涡流、分离线、附着线
- 基于数学定义的特征
临界点:流场中速度为零的点,如源点、汇点、鞍点、螺旋
为什么要关注流场特征:
简化可视化结果从而更清晰的展示流场结构
- 在介绍完这些基本知识后,陶钧老师接下来为我们讲述了基于特征的显性流场可视化方法。对于显性流场可视化的方法,如前面所述,首先需要进行特征的检测及追踪,其包括:临界点的检测、临界点的分类、临界点尺度及稳定性、特征追踪。然后需要进行可视化方法举例,其包括:基于临界点的种子点放置。对于基于特征的显性流场可视化方法,其过程如下:
1、寻找速度为零的点(临界点):分为二维和三维
2、对临界点进行分类:通过看雅克比矩阵的特征值来对临界点进行分类,实数大于零流出,实部小于零流入,虚数部分表示是否有螺旋的特征,其组合情况如下
3、排除噪音的影响,找出稳定的临界点
由高斯平滑产生的图像的尺度空间。多次平滑后,只有大尺度的特征依然在图片中保留。对于向量场进行高斯平滑以检测大尺度临界点,平滑次数越多的话,临界点越稳定。由于在平滑过程中临界点的位置是会改变的所以需要通过feature flow field建立不同尺度点之间的关系。也可以通过消除临界点所需要的最小扰动找出场中的稳定结构。
4、特征追踪
将非稳定n维流场中的临界点追踪问题转换为(n+1)维流场中的流线产生问题。沿着一个三维曲线做一个切面找二维的流线。
- 自己的研究
Semantic Flow Graph
研究原因:流场中有不同的元素如临界点、流线等,每一个元素包含了一定语义的信息,流线有曲率等,怎么去看这些不同元素之间的关系。
研究过程:把流场的基本信息和语义组成一个异构图,每一个节点包含一个类型的所有元素。
研究目的:希望通过这些语义信息去进一步把不同特征的元素给组织起来,然后通过工具去看这些组之间有什么关系。
异构图包含:三类点对应三类元素,三类边连接三类点:L-P边,流线穿越过临界点领域的话就认为流线跟这个临界点是相关的,L-R边,流线穿过空间区域,R-P边,空间区域包含临界点,通过这些关系的简单的定义希望去帮助科学家去看流场的基本的结构。
其界面如下:
为了把想要的元素给分组在一起,提供了两种语义抽象的操作:基于属性的拆分和基于结构的拆分,提供了两种操作查看节点:领域检查和连接器检查。
1、基于元素属性拆分节点:
拆分后每个节点包含具有形同属性的元素
2、基于元素与用户指定节点之间的关系拆分节点
拆分以后每个节点包含与相同节点相连接的元素
小结:
- 基于异构图探索流场特征及其之间的联系
- 用户根据语义自由构建异构图满足不同层次探索需要
- 多种探索操作支持不同类型的任务
帮助我们探索不同的元素,每个元素又有不同的意义的时候,去探索流场的特征,给用户提供的最大的自由是,比如可以看具体的流线或者说要看哪一类的流线,能够支持不同的特征
- 基于特征的隐性流场可视化方法
对于想知道流场的结构,但我们并不知道具体的问题是什么的时候使用基于特性的隐性流场可视化的方法。在大多数情况下都使用这种方法。
思路1:基于重要性度量
利用信息论概念量化流线包含信息
使用熵度量流场中包含的信息量,熵越高流场越复杂
基于熵放置种子点
基于熵调整透明度
之前的图中所有都是同一个透明度,可以根据熵值的大小逐渐降低熵比较低的区域的透明度,使得中心特征变得更加明显。
2、做的工作:
View-Dependent Streamlines for 3D Vector Fields
同样使用熵计算流线的重要性,基于当前流线的二维投影计算占用图,选择流线时将其熵值从占用图相应的格子中扣除,若占用图中剩余值不足以扣除相应熵值则无法添加该流线
度量流线重要性的同时也需要度量视角的重要性,相同的线在不同的视角下传递的信息也不一样。(选择流线很重要,选择视角也很重要)希望把流线的选择和视角的选择用同一个方法来联系在一起。
连接流线和视角的工具:信息通道
使用转移概率矩阵连接两个随机变量X和Y,使用信息通道连接一组备选流线S和一组备选视角V
前述方法仍然无法解决以下问题:
- 流场特征可能太小,无法通过流线选择解决
- 流场特征可能被遮挡,在某种程度上可以通过流线选择解决
- 一条流线可能通过数个具有不同重要性的区域,流线选择无法独立控制每个区域内流线密度。
解决方法:
重要性评价,将空间均匀划分成若干区域,然后评价每一块体的重要性根据块体的重要性对其进行形变。通过熵同时考虑流速和流向来自动评价每一块体的重要性(同时根据需要可通过流线调整区块的重要性)
基于重要性度量的小结:
优点:使用性广,针对不同应用都有较好的结果
缺点:无法区分不同特征,例如鞍点与螺旋被同时放大,小尺度特征仍然可能淹没在其他特征中而无法观察
思路2:基于相似性的度量
基于点的曲线距离
四种常见的距离度量及方法应用
基于其他特征的流线比较方法
曲率、挠律及深度学习等
参考文献:IGAL九期班陶钧视频及ppt