第四讲三维标量场数据可视化ppt课件.ppt_第1页
第四讲三维标量场数据可视化ppt课件.ppt_第2页
第四讲三维标量场数据可视化ppt课件.ppt_第3页
第四讲三维标量场数据可视化ppt课件.ppt_第4页
第四讲三维标量场数据可视化ppt课件.ppt_第5页
已阅读5页,还剩68页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

科学计算可视化 三维平面数据场可视化 VisualizationTechniquesThreeDimensionalScalarData 三维标量场可视化 三维空间数据场方法 三维空间数据场与二维数据场不同 它是对三维空间中的采样 表示了一个三维空间内部的详细信息 这类数据场最典型的医学CT采样数据 每个CT的照片实际上是一个二维数据场 照片的灰度表示了某一片物体的密度 将这些照片按一定的顺序排列起来 就组成了一个三维数据场 此外 用大规模计算机计算的航天飞机周围的密度分布也是一个三维数据场的例子 三维空间数据场方法主要分为 1 抽取表面信息的可视化方法 面绘制 分为断层间的构造等值面 等值面生成2 直接体绘制方法 体绘制 光线投射 投影方法 其它体绘制方法 抽取表面信息的可视化方法 面绘制 断层间的构造等值面 断层间表面重构 如CT采样数据场这样的三维数据 可以看成是由一些二维数据场按一定顺序排列组成的 各断层数据之间有很大的相关性 断层数据广泛存在于医学 生物 地质 无损探伤等应用领域 其各断层间相互平行 每一断层与实体的交线就是实体在该断层的轮廓线 如果先在各层之间找出物体的边界线 再利用断层之间的连贯性 就可以从一系列断面上的轮廓线中推导出相应物体的空间几何结构 断层间的构造等值面 断层间表面重构 主要应用领域是医疗成像不同的扫描技术包括 CT 计算机断层扫描 MRIMRI 核磁共振成像 多个二维切片的三维图像 扫描仪给平均一个地区价值 而不是在一个点的值 切片间的空隙 切片 切片 断层间的构造等值面 断层间表面重构 CT MRI SPECT单光子发射计算机断层成像术 断层间的构造等值面 断层间表面重构 断层数据的表面重构是从一系列断面上的轮廓线推导出实体的空间几何结构相邻层的轮廓线位于相互平行的两个平面 断层间的构造等值面 断层间表面重构 如果在相邻两层 各自只有一条轮廓线 其三维重构问题称为单轮廓线重构问题如果在相邻两层 有多条轮廓线 其三维重构问题称为多轮廓线重构问题 断层间的构造等值面 断层间表面重构 在一个断层中找出物体的轮廓线可以利用上面介绍的等值线方法 找到所有轮廓线后 第二步是在各个相邻的轮廓线之间构造出物体的表面 然后进行绘制 物体的表面可以用三角面片拼接出来 拼接的方法如图所示 就是在相邻的两层上找出三个点 其中两个点在同一层 另一个点在另一层 在拼接过程中 一次加入一条边 就可以组成一个三角面片 但加入一条边有两种选择 例如图中P1Q2和P2Q1 如果选择不恰当 则拼接出的表面比较乱 也不光滑 最简单的选择方法可以采用贪心方法 就是每次选择一条较短的边加入 这样可以保证构造出的表面比较光滑 三角面片拼接物体表面 10 面绘制算法 将三维数据场中具有某种共同属性的采样点按其空间位置连接起来 构成一张连续表面 然后对抽取出的表面进行绘制等值面算法等值面 在一给定三维数据场中 采样值均为某一给定值的所有空间点的集合三维标量场可视化中最常用MarchingCubes方法 等值面生成 面绘制 等值面生成 面绘制 构造物体的表面也可以采用等值面的方法 等值面可以看成是等值线的三维扩展 等值面的构造也就是等值线构造方法的三维扩展 最典型的就是MarchingCube方法 二维数据场的基本单元是矩形 在三维空间的基本单元是一个小立方体 如果我们找出每个小立方体中的等值面 这些等值面也就构成了整个物体的表面 表面绘制方法绘制的动物骨骼表面 13 MarchingCubes算法 数据集适用于三维规则标量场每一立方体单元称为一个体素 voxel 数据场的数据值分布在体素的8个顶点上典型代表 CT数据 MRI数据 MarchingCube方法 f000 f001 f100 f101 f111 体数据 体素 顶点 每个体素转换单位立方体 f011 f110 f010 数据增强 最近邻插值 f000 f001 f100 f101 f111 f011 f110 f010 体素内的任意点都用最近邻插值计算 速度快不连续 数据增强 三线性插值 f000 f001 f100 f101 f111 f011 f110 f010 三线性插值 f x y z f000 1 x 1 y 1 z f100 x 1 y 1 z f010 1 x y 1 z f001 1 x 1 y z f110 xy 1 z f101x 1 y z f011 1 x yz f111xyz 数据增强 三线性插值 表示的数值由如下表示 i 4个1维x方向的插值 ii 2个1维y方向插值 iii 1个1维z方向插值 FromUniversityofBonn 建立等值面 简单起见 以数值为零的水平等值面为例 并记 正顶点为 立方体有八 均为正或均为负 共计28 256不同情况 以下两种最简单 此时 立方体内部无等值面部分 等值面建立 一个顶点为正的情况 逆线性插值的交点 逆线性插值 根据线性插值公式t处的函数值 f x f1 t f2 f1 根据f 反求t f f1 f2 f1 等值面建立 一个顶点为正的情况 连接交叉点 形成了一个三角形等值面的一部分 等值面建立 正顶点在对应角处 等值面建立 通过分析这种方式所有256种情况 尽管它很相差很大 很多情况下是相似的 例如 顶点都为正或为负的2种情况 都没有等值面16种情况 其中一个顶点从所有其他符号相反实际上 仅有15拓扑不同的情况 256种可能的情况可以归纳为这15个基于典型个案互补的基础上 顶点为正和负的互换 和旋转对称这样做的好处是为便于实施 我们只需要代码15种情况代替256种 27 MarchingCubes算法 思想 基于 分治 divide and conquer 思想将整个数据场的等值面抽取分解到每一个体素中去完成 28 MarchingCubes算法 算法概述读入三维规则标量场对于每一体素依据所需抽取的等值面的属性值 确定其8个顶点的状态对于体素的每一条边 依据顶点状态 判别它是否与等值面有交点 若交点存在 则求出交点在求出了当前体素的所有边与等值面的交点后 依据一定的准则将这些交点连接成三角形 作为等值面位于该体素内部分的近似表示 并进行真实感绘制当处理完所有体素后 即完成了整个数据场的等值面抽取与绘制 29 MarchingCubes算法 确定体素顶点状态设所需抽取的等值面的属性值为C0若某顶点V所存贮的数据值大于 或等于 C0 则认为V在等值面外侧 或位于其上 并记其状态值为1反之 若V所存贮的数据值小于C0 则认为V在等值面内侧 并记其状态值为0 30 MarchingCubes算法 确定体素顶点状态Example 5个顶点均位于外侧 记为 Case v8 v7 v6 v5 v4 v3 v2 v1 v1v2 v5v6 v4v3 v8v7 31 MarchingCubes算法 判别体素的边与等值面是否有交对于某一条边E 其顶点为V1和V2 若V1和V2的状态值相同 则边E位于等值面的外侧 或内侧 边E不与等值面相交 反之 若V1和V2的状态值不同 边E必定与等值面相交若边E与等值面有交点 可通过线性插值计算出交点 32 MarchingCubes算法 将体素各边与等值面的交点连接成三角形取决于体素每一顶点的状态值分布情况存在着28种不同情况每一体素有8个顶点每一顶点有两种状态值基于体素顶点状态翻转对称性和旋转对称性 将上述256种组合情形减少到15种翻转对称性 如果体素各顶点的状态值0和1互换 所含等值面的拓扑结构 即交点连接关系 不变旋转对称性 体素旋转后 所含等值面的拓扑结构不变 33 MarchingCubes算法 15种等值面连接模式 01234 56789 1011121314 MarchingCubes算法 第1步 8个顶点相对的等值面的值分类 V1 V2 V3 V4 V5 V6 V7 V8 1 1 0 0 0 0 0 1 V1 V2 V3 V4 V5 V6 V7 V8 8 字节索引 1 ve 0 ve 代码标识边的相交 V1V4 V1V5 V2V3 V2V6 V5V8 V7V8 V4V8 MarchingCubes算法 第2步 查找表标识出等值面交点个数例如 00000000Configuration010000000Configuration101000000Configuration1 11000001Configuration6 11111111Configuration0 MarchingCubes算法 第3步 沿边缘的逆线性插值将找到的交汇点第4步 规范的配置将决定如何创建等值面片 0 1 2 3或4个三角形 第5步 通三角形的显示渲染 MarchingCubes算法找等值面 优点等值面提取边效果较好定义为三角形在3D表面 著名的渲染技术提供照明 阴影和观看 硬件支持缺点只显示数据切片有二义性 算法 Marchingcubes算法缺点 第3步 三角形是选择不唯一 39 MarchingCubes算法 存在问题15种连接情形中 有些存在二义性 可能导致所生成的相邻体素的等值面之间不连续 从而使最终生成的等值面存在 空洞 算法二义性 二义性问题 可以判断交叉口一双值寻找鞍点连接 算法歧义 歧义原因 因为 三线性插值是线性沿边缘就成了一个双线性函数 正确的拓扑结构 我们必须加入一个正确的交点 产生歧义的不同三角面 42 MarchingCubes算法 存在问题及改进改进方法之一 增加连接模式 使其能与相邻体素的状态相匹配以消除 空洞 43 MarchingCubes算法 存在问题及改进改进方法之二 将六面体体素分解为四面体单元 并将等值面抽取限制在四面体单元中进行 等值面空洞 由于二义性三角面的存在 会造成空洞出现 孔洞 三线性插值 三线性插值函数 f x y z f000 1 x 1 y 1 z f100 x 1 y 1 z f010 1 x y 1 z f001 1 x 1 y z f110 xy 1 z f101x 1 y z f011 1 x yz f111xyz相对复杂 例如 等值面f x y z 0为三次平面 三线性插值精确等值面 一个真正的等值面三线性插值是曲面轮廓线是双曲线 47 MarchingCubes算法 存在问题及改进所生成的等值面中往往包含大量的三角面片 影响存储与绘制的效率改进方法之一 对所生成的等值面三角形网格进行简化改进方法之二 采用适用于密集数据场等值面生成的DividingCubes算法 体绘制方法 在自然环境和计算模型中 许多对象和现象只能用三维数据场表示 对象体不是用几何曲面和曲线表示的三维实体 而是以体素为基本造型单元 例如人体里面就十分复杂 如果仅仅用几何表示各器官的表面 不可能完整显示人体的内部信息 体绘制 VolumeRendering 的目的就在于提供一种基于体素的绘制技术 它有别于传统的基于面的绘制技术 能显示出对象体的丰富的内部细节 体绘制方法 CT扫描数据256x256x226 体绘制 三维数据场可以表示很多自然环境和计算模型其对象不再是几何曲面和三维实体 包含了对象内部信息放弃了体是由面构造的约束 它直接从三维数据场中绘制出各类物理量的分布其绘制质量优于传统面绘制交互性能 算法效率有待提高应用领域不断拓广 51 直接体绘制算法 直接体绘制 指不经过体数据到多边形的转换 而直接对三维体数据进行处理生成可视图像的方法 如研究光线穿过三维体数据场时的变化 得到最终的绘制结果 直接体绘制通常简称为体绘制 52 直接体绘制算法 Why 面绘制算法的两个假设对于某一个给定的等值面的值C0 可以从数据场中抽取出一系列多边形来逼近该等值面所抽取出来的多边形网格表面能反映物体的结构上述两个假设都有可能不成立 53 直接体绘制算法 Why 面绘制算法无法显示出整个三维数据场的全貌会导致三维数据场中大量的信息丢失对于规模较大的三维数据场 采用面绘制方法所生成的等值面网格往往过于复杂甚至会超出现有图形硬件的处理能力 直接体绘制算法 体绘制与传统面绘制的区别 从结果图象质量上讲 体绘制优于面绘制 但从交互性能和算法效率上讲 至少在目前的硬件平台上 面绘制优于体绘制 这是因为面绘制是采用的传统的图形学绘制算法 现有的交互算法和图形硬件和图形加速技术能充分发挥作用 两种绘制方法的比较 绘制方法比较 光线投射体绘制 光线投射方法从图象平面的每个象素向数据场投射光线 在光线上采样或沿线段积分计算光亮度和不透明度 按采样顺序进行图象合成 得到结果图象 光线投射方法是一种以图象空间为序的方法 它从反方向模拟光线穿过物体的全过程 并最终计算这条光线到达穿过数据场后的颜色 光线投射体绘制流程 光线投射算法主要有如下的过程 1 数据预处理 包括采样网格的调整 数据对比增强等 2 数据分类和光照效应计算 分别建立场值到颜色值和不透明度之间的映射 并采用中心差分方法计算法向量 进行光照效应的计算 3 光线投射 从屏幕上的每个象素 沿观察方向投射光线 穿过数据场 在每一根光线上采样 插值计算出颜色值和不透明度 4 合成与绘制 在每一根光线上 将每一个采样点的颜色值按前后顺序合成 得到象素的颜色值 显示象素 光线投射绘制流程 58 光线投射体绘制算法 图像空间算法步骤设计传输函数 transferfunction 该函数将空间任一点的标量值映射为点的光照属性值朝画面每一像素投射光线 沿该光线方向对标量场进行重采样 选取适当光照模型计算各采样点处的光亮度值沿投射光线方向对各采样点的光亮度值合成 生成像素的显示光亮度 59 光线投射体绘制算法 设计传输函数对三维数据场各采样点上存贮的数据值进行分类 依据一定的准则为数据场每一采样点赋一颜色值 R G B 和不透明度值 opacity 用 表示 60 光线投射体绘制算法 沿投射光线方向重采样计算光亮度值从当前视点位置出发 向屏幕上的每一像素点发出一条光线 穿过数据场 同时沿着光线进行均匀点采样 得到一系列重采样点 61 光线投射体绘制算法 沿投射光线方向重采样计算光亮度值 cont 对于每一数据场内的重采样点PR 找出它所在的体素 对该体素的8个顶点的不透明度和颜色作三线性插值得到PR处的不透明度和颜色类似地 通过三线性插值计算得到PR处的梯度 即法线方向 根据体光照明模型计算PR处光亮度值 62 光线投射体绘制算法 光亮度值合成将分布在同一光线上的所有重采样点的光照强度按照一定的次序进行累计得到相应屏幕像素最终显示的颜色两种合成方法从后向前从前向后 63 光线投射体绘制算法 光亮度值合成从后向前合成 64 光线投射体绘制算法 光亮度值合成从前向后合成在从前向后的累加过程中 不透明度 将不断增加 逐渐向1逼近 当 接近于1

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论