标签存档: 科学可视化

基于射线代理分布的大规模时变体数据探索(Ray-based Exploration of Large Time-varying Volume Data Using Per-ray Proxy Distributions)

对如今超级计算机上模拟产生的大规模时变体数据进行分析和可视化是一项非常艰巨的挑战,因为超级计算机可以产生具有极高时间和空间分辨率的数据集。网络传输和储存设备的有限带宽使得将整个数据集移动到数据分析机进行分析是不可行的。常见的解决方法之一是保持原始空间分辨率的同时降低时间采样率,但简单地在相邻采样时间步间进行插值会造成很大的误差。光线投射(Ray Casting)算法是直接体渲染(Direct Volume Rendering)的一种经典常用的方法。本工作提出了一种基于光线的表示方法,储存基于光线的直方图及深度信息,用以恢复采样时间步间的体数据渲染结果的信息,从而达到压缩原始数据的目的。

继续阅读 »

特征乐高:一种使用穷举聚类进行超体素聚类的体数据探索方式(FeatureLego: Volume Exploration Using Exhaustive Clustering of Super-Voxels)

对于体数据的探索十分困难。一方面,体数据中蕴含着丰富的特征,探索过程中容易有所遗漏。另一方面,体数据中又充斥着噪声和用户不感兴趣的区域,需要精心进行特征的提取和筛选。对于体数据进行基于特征选择的探索方式通常基于体素聚类。在以往的工作中,交互式地聚类方式,需要用户对于聚类边界进行细致的调整,给用户带了巨大的负担。而由此衍生的多重聚类(Multiple Clustering),则通过对于聚类算法超参数的采样,获取尽可能多的聚类结果。而在此过程中,需要大量的试错式的尝试,才能得到良好的参数采样才能得到最终良好的聚类结果,同时由于采样的问题,特征的提取可能不够穷尽而导致有所遗漏。本文提出了一种基于穷举聚类的体素聚类方式,其命名而“特征乐高”,因为其在探索过程中能够提供给用户穷尽的特征聚类结果,就像基本的积木一样,用户可以有效的进行特征选择,加以组合,最终生成定制化的体数据可视化结果。

继续阅读 »

基于一种混合了确定性和不确定性的方法对超大规模切分体数据的剔除(Culling for Extreme-Scale Segmentation Volumes: A Hybrid Deterministic and Probabilistic Approach)

随着成像技术的快速发展,TB级别的超大规模的体数据逐渐频繁地出现在科研和产业界中。再加上近年来先进的体数据自动切分标注技术的出现,超过百万量级的密集标注的体数据已经能够生成。这样密集的标注方式,如32-bit的整数标注,又进一步增大了数据的体量。巨大的数据给对于切分标注数据的交互式可视化和可视分析带来了巨大的挑战。一方面,针对这样的数据生成高效的多分辨率层次结构十分困难,如何对于多分辨率层次结构的体数据匹配地进行标签的采样与生成需要新的技术。另一方面,对于特定的数据切块的查找和定位,十分费时费力,需要新的高效的数据组织方式来进行存储和访问。本文提出了一种新的数据管理的方式,可以有效地助力对超大规模切分体数据的剔除。

继续阅读 »

深度神经网络支持下的交互式体数据可视化(DNN-VolVis: Interactive Volume Visualization Supported by Deep Neural Network)

体数据在医学、科学模拟数据中具有广泛运用。直接可视化(DVR)是重要的体数据可视化方法。其中关键是设计合适的传递函数。传递函数是将体数据中体素的值映射成为颜色-透明度值。本质上是将体素进行分类,识别其中的特征并给予不同的颜色透明度属性。在传统体渲染中,给定传递函数,选定视角参数之后就可以合成、计算渲染结果的每个像素的值。

然而,有时用户想要探索已有的可视化结果,但原始的传递函数并未公开。或者探索过程中,用户不满足于调整传递函数来获取结果,在传递函数基础上,他们想要直接对渲染结果进行一些修改。但是从渲染结果到传递函数难度巨大:一方面传递函数的设计空间巨大不可能暴力遍历,另一方面渲染结果中像素和传递函数之间也没有解析表达,细小的传递函数的差异可能导致巨大的结果差异。为解决这类问题,本工作[1]提出了基于深度学习网络的更直接的处理方式。本工作中的神经网络可以接受用户想要探索的可视化结果作为输入,随着用户的交互,可以直接合成在其他视角参数下的“渲染结果”。我们合成的结果可以和真实的渲染结果相媲美。

继续阅读 »

2018年北京大学可视化暑期学校 – Day 4(2018年7月20日)

7月20日上午,来自俄亥俄州州立大学计算机系的沈汉威教授讲授了题为”基于分布的原位数据建模、分析和可视化“的课程。下午,浙江大学计算机科学与技术学院的巫英才研究员的授课主题是“社交媒体数据的可视分析”。

继续阅读 »

科学可视化战略研讨会举行

2018年6月21日至22日,由中国图象图形学学会可视化与可视分析专委会主办,北京大学机器感知与智能教育部重点实验室承办的科学可视化战略研讨会在北京香山饭店召开。来自北京大学、清华大学、天津大学、国防科技大学、西南科技大学、东北师范大学、南京师范大学、燕山大学、山东工商学院等高校,中国科学院软件所、计算机网络信息中心、北京应用物理与计算数学研究所等科研机构的20多位科学可视化方向的专家、学者汇聚一堂。就可视化发展所面临的关键科学问题和新的研究方向展开了深度交流。

继续阅读 »

一种基于三维卷积稀疏编码的体渲染智能系统方案 (An Intelligent System Approach for Probabilistic Volume Rendering using Hierarchical 3D Convolutional Sparse Coding)

图8:Kiwi数据和Aneurysm数据的体渲染结果,分别为[2]、[3]和本文方法

直接体渲染是一种表现三维体数据的强大可视化手段。过去数十年间,研究者们进行了大量的研究,来提高体渲染的速度与质量。其中,传递函数的设计是影响这两个指标的一个重要因素。传递函数将体素的值映射到诸如颜色、不透明度、可见性等光学性质。然而,要设计一个好的传递函数通常面临着很大的困难,对非专业使用者更是如此。绝大多数传递函数设计的方法都依赖用户大量的交互,用户需要根据数据的统计特征,通过不断试错,以求达到好的效果。这里的统计特征通常是数据某些属性的直方图。在本文中,作者提出了一种基于机器学习方法:三维卷积稀疏编码,能对体素进行精确分类,从而得到优秀的体渲染结果。同时,基于智能系统的交互方式,能让用户通过直观的输入,来完成传递函数设计过程。

继续阅读 »

多空间分辨率的时变气候集合模拟数据可视化 (Visualization of Time-Varying Weather Ensembles Across Multiple Resolutions)

系统的可视化界面

在气象相关的集合模拟中,量化模型中的不确定性是领域科学家们十分关心的问题,其对在现实世界中做出决策有十分重要的意义。现如今,随着计算能力的飞速提高,已有的模型模拟已经能够产生出时变的多分辨率的集合模拟数据集。因此而产生了领域科学家十分关心的两个问题:一是输入参数的敏感度信息,二是模型在不同分辨率下的精确程度。根据输入参数的敏感度信息,可以将更多的计算资源倾斜到那些对输出有更高影响上的输入变量上。同时,了解模型在不同分辨率下的精确程度,也能在节省存储和计算代价的前提下,得到足够优秀的模型输出结果。本文就针对WRF (Weather Research and Forecasting) 模型,根据其在不同参数不同分辨率下的输出,并在真实数据的辅助下,研究参数敏感度和空间分辨率精确度的关系。

继续阅读 »

时变集合模拟数据的有效可视化 (Effective Visualization of Temporal Ensembles)

图1:对于单个时间步粒子形态的可视化。左图包含八叉树的完整结构,右图仅包含八叉树中第四层的结构。

随着计算能力的不断提高,集合模拟 (ensemble) 数据已经被广泛应用于各类科学模拟中。从定义来说,一个集合模拟数据是一组紧密相关数据集的集合,每个数据集被称作“成员”,它们来自于同一次模拟或同一次试验的多次运行结果。通常集合模拟数据的分析难度巨大,既因为其数据量庞大,也因为其具有时变、高维、以及多变量的多重复杂性。本文提出了一系列的可视化分析方法来研究这类具有时变特征的集合模拟数据,尤其是其关注其所包含特征在各成员间的异同及演变过程。

继续阅读 »

Diderot: 领域专用语言实现的可移植的并行科学可视化与图像分析(Diderot: a Domain-Specific Language for Portable Parallel Scientific Visualization and Image Analysis)

随着科学数据越来越大以及数据处理分析越来越复杂,科学可视化系统面临两个重要的挑战:
1)数据在可视化之前的预处理与分析需要更灵活的并行计算
2)数据分析过程中涉及到的复杂数学计算需要抽象成简单的函数调用

领域专用语言可以很好地解决以上两个问题。本文提出的Diderot[1]系统主要从以下几个方面解决这两个问题。
1)可移植的并行设计,使用基于POSIX标准的pthread实现线程级。
2)定义strand(股),并使用strand创建线程,线程的一次执行就叫做strand的一次迭代。此外,strand还支持线程之间的通信。
3)抽象复杂的数学计算。简化导数,梯度,卷积,张量计算过程。将这些复杂的计算封装成简单函数调用。在代码中支持直接使用这些数学计算的操作符。
4)封装成C/C++的API。方便其他使用C/C++开发的程序调用。
5)卷积计算操作(如clamp, mirror以及wrap等操作)。

Diderot提供对一些数据描述的简化操作。主要从支持以下抽象代码实现的

image(2)[] I = image(“hand.nrrd”);

其中(2)表示hand.nrrd数据为二维数据,[]表示变量的个数。[]中间空表示标量,[3]表示三维向量,[3,3]表示3×3矩阵。

继续阅读 »