热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

等值面抽取技术(Iso-surfacesExtractionTechnique)

原文引用自http:vis.pku.edu.cnblog等值面抽取技术(iso-surfaces-extraction-technique)等值面的抽取技术(Iso-

原文引用自http://vis.pku.edu.cn/blog/等值面抽取技术(iso-surfaces-extraction-technique)/


等值面的抽取技术(Iso-surfaces Extraction Technique)及其绘制是三维空间数据场(体数据)可视化的重要组成部分。所谓等值面是指空间中的一个曲面,在该曲面上函数F(x, y, z)的值等于某一给定值V,即由S = {(x, y, z):F(x, y, z) = V}组成的一个曲面。等值面可视化利用现有的、由硬件实现的画面绘制功能构作清晰的三维空间数据场中的表面图像,其图形生成及变换速度较快,因而被广泛地应用于科学及工程计算结果数据的显示中[6]。

在三维空间数据场中提取等值面的方法很多。早期的轮廓跟踪法(Contour Tracing)[2]是通过提取每个二维切片(Slice)的二维轮廓线后,用三角面片跟踪连接属于同一对象在相邻切片上的轮廓线进而得到相应的等值面。该方法可以根据特定的需求,只提取感兴趣区域的轮廓线序列,然后重构出三维等值面。其主要的问题是每一个切片上可能存在多个闭合轮廓线,相邻的两个切片上的轮廓线的差别也可能非常大,使得跟踪连接相邻切片上的轮廓线的工作十分困难,对于复杂结构的跟踪可能会产生大量连接错误。

立方块法(Cuberille)[1]是首先根据等值面数值将体数据二值化后,考虑处于边界上的每个立方块(体元),连接其所有的外向的边界面。如果只考虑绘制的效果,可以直接将边界体元以不透明六面体的形式渲染。该方法算法非常简单,和其他方法不同,在体元内没有插值计算,对于数据的处理高度独立,适于并行处理。其主要问题是提取得到的等值面是由相邻垂直的小平面组成块状表面,不够平滑。可以通过自适应细分的方法,每次将立方块细分为八个更小的立方体,使用三线性插值法持续到获得足够光滑的表面。

图1 移动立方体法中等值面和立方体相交的15种不同的情况

在各类等值面提取方法中最经典的是由W. E. Lorenson和H. E. Cline1987年提出的移动立方体法(Marching Cubes)[3]。这一方法首先假定函数值在三维空间中均匀地分布在由立方体组成的三维网络的顶点上,并假定函数值沿立方体棱边作线性变化。在求出等值面与立方体棱边的交点后将它们按一定规则连接起来,就可得到近似表示等值面的一系列的多边形或三角形。根据立方体数值的不同,一共有256种相交情况。通过对称性简化,可以合并成为15种处理情况(如图1)。再利用计算机图形学中传统的画面绘制技术,就可以得到待求等值面的真实感图形了。此算法实现容易,得到了广泛的应用。但该算法产生大量散乱的三角面片、对某些层间距离较大的医学图像数据会产生“台阶”样的中间层、构造等值面时存在二义性等缺点,对等值面显示速度、绘制效果及后继简化等影响很大。其中产生歧义的情况,可以通过渐近线决策(Asymptotic Decider)法[5]等解决。

W.E. Lorenson和H.E. Cline提出移动立方体法后不久,他们发现,当三维体数据的分辨率很高时,移动立方体法生成的三角面片通常很小,其投影可能小于屏幕上一个像素点的面积,因此不必要插值计算三角面片。因此1988年两人提出了剖分立方体(Dividing Cubes)[4]的方法。剖分立方体法逐个扫描每个体元,当体元的八个顶点跨越等值面阈值时,将该体元循环细分,直到其投影大小不大于显示图像像素,将其作为一个点到投影显示到输出图像上。

上述的方法适合于具有规则结构的三维空间数据场的等值面提取。对于不规则体数据,可以细化划分为四面体后通过移动四面体(Marching Tetrahedra, MT)的方法获得等值面。这个方法和移动立方体方法类似,但更为简单,顶点的取值只有两种不同的情况,即只有一个顶点函数值大于等值面数值(和三个顶点函数值大于等值面阈值情况对称)和两个顶点函数值大于等值面数值的情况,相应对于生成等值面上的一个或两个三角形。由于四面体是最简单的多面体,其它任何类型的多面体都可以剖分解析为四面体,可以广泛适用于各类体数据。此外,在四面体内提取等值面不存在移动立方体方法中存在的二义性问题。

对于大规模的体数据,已有各类加速算法提供高效的等值面提取方法[6]。在提高移动立方体方法的效率方面有基于八叉树的等值面提取方法,在建立的八叉树的每个节点上存储其所有子节点的最大值与最小值。遍历八叉树时,可以直接根据子节点数值范围,跳过不可能含有等值面的部分。和基于几何空间分解的加速方法不同,基于范围查询 (Range-query)的算法通过建立跨度空间(Span Space),在数值空间上对体数据进行分解,可以同时应用于规则或者不规则数据。此外通过视点相关的方法,只考虑可见部分的等值面提取也可以在一定程度上提高效率。光线跟踪的方法不需要提取中间曲面,可以直接获得等值面的绘制结果。最近快速光线跟踪方法的进步,使这类方法具有一定的吸引力。该方法还适用于同时绘制多个等值面。其他等值面提取的技术包括利用Level-Sets或者利用极值图(Extrema Graphs)的方法。

等值面的提取以及绘制是体数据可视化的重要组成部分,特别在早期的可视化研究工作中受到了极大的重视,得到了长足的发展。目前等值面方法的工作已经日趋成熟,在处理海量数据等方面还有一定的挑战存在。



参考文献

  1. G. T. Herman, H. K. Liu, “Three-dimensional display of human organs from Computed Tomograms”. Computer Graphics and Images Processing, 9(1):1-21, 1979.
  2. E. Keppel, “Approximating Complex Surfaces by Triangulation of Contour Lines”. IBM Journal of Research and Development, 19(1): 2-11, 1975.
  3. W. E. Lorensen, H. E. Cline, “Marching Cubes: A High Resolution 3D Surface Construction Algorithm”. Computer Graphics, 21(4): 163~169, 1987.
  4. H. E. Cline, W. E. Lorensen, S. Ludke, C. R. Crawford, and B. C. Teeter, “Two algorithms for the Three-Dimensional Construction of Tomograms”, Medical Physics, 15(3):320-327, 1988.
  5. G. M. Nielson, Bernd Hamann, “The Asymptotic Decider: Resolving the Ambiguity in Marching Cubes”, in Proceedings of IEEE Visualization 1991, pp 83-91, 1991.
  6. The Visualization Handbook, Edited by C.D. Hansen and C.R. Johnson, Elsevier 2005.


推荐阅读
  • 生成式对抗网络模型综述摘要生成式对抗网络模型(GAN)是基于深度学习的一种强大的生成模型,可以应用于计算机视觉、自然语言处理、半监督学习等重要领域。生成式对抗网络 ... [详细]
  • 云原生边缘计算之KubeEdge简介及功能特点
    本文介绍了云原生边缘计算中的KubeEdge系统,该系统是一个开源系统,用于将容器化应用程序编排功能扩展到Edge的主机。它基于Kubernetes构建,并为网络应用程序提供基础架构支持。同时,KubeEdge具有离线模式、基于Kubernetes的节点、群集、应用程序和设备管理、资源优化等特点。此外,KubeEdge还支持跨平台工作,在私有、公共和混合云中都可以运行。同时,KubeEdge还提供数据管理和数据分析管道引擎的支持。最后,本文还介绍了KubeEdge系统生成证书的方法。 ... [详细]
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • 微软头条实习生分享深度学习自学指南
    本文介绍了一位微软头条实习生自学深度学习的经验分享,包括学习资源推荐、重要基础知识的学习要点等。作者强调了学好Python和数学基础的重要性,并提供了一些建议。 ... [详细]
  • 学习SLAM的女生,很酷
    本文介绍了学习SLAM的女生的故事,她们选择SLAM作为研究方向,面临各种学习挑战,但坚持不懈,最终获得成功。文章鼓励未来想走科研道路的女生勇敢追求自己的梦想,同时提到了一位正在英国攻读硕士学位的女生与SLAM结缘的经历。 ... [详细]
  • Spring源码解密之默认标签的解析方式分析
    本文分析了Spring源码解密中默认标签的解析方式。通过对命名空间的判断,区分默认命名空间和自定义命名空间,并采用不同的解析方式。其中,bean标签的解析最为复杂和重要。 ... [详细]
  • 本文讨论了在Windows 8上安装gvim中插件时出现的错误加载问题。作者将EasyMotion插件放在了正确的位置,但加载时却出现了错误。作者提供了下载链接和之前放置插件的位置,并列出了出现的错误信息。 ... [详细]
  • 知识图谱——机器大脑中的知识库
    本文介绍了知识图谱在机器大脑中的应用,以及搜索引擎在知识图谱方面的发展。以谷歌知识图谱为例,说明了知识图谱的智能化特点。通过搜索引擎用户可以获取更加智能化的答案,如搜索关键词"Marie Curie",会得到居里夫人的详细信息以及与之相关的历史人物。知识图谱的出现引起了搜索引擎行业的变革,不仅美国的微软必应,中国的百度、搜狗等搜索引擎公司也纷纷推出了自己的知识图谱。 ... [详细]
  • sklearn数据集库中的常用数据集类型介绍
    本文介绍了sklearn数据集库中常用的数据集类型,包括玩具数据集和样本生成器。其中详细介绍了波士顿房价数据集,包含了波士顿506处房屋的13种不同特征以及房屋价格,适用于回归任务。 ... [详细]
  • 不同优化算法的比较分析及实验验证
    本文介绍了神经网络优化中常用的优化方法,包括学习率调整和梯度估计修正,并通过实验验证了不同优化算法的效果。实验结果表明,Adam算法在综合考虑学习率调整和梯度估计修正方面表现较好。该研究对于优化神经网络的训练过程具有指导意义。 ... [详细]
  • IjustinheritedsomewebpageswhichusesMooTools.IneverusedMooTools.NowIneedtoaddsomef ... [详细]
  • 本文介绍了游标的使用方法,并以一个水果供应商数据库为例进行了说明。首先创建了一个名为fruits的表,包含了水果的id、供应商id、名称和价格等字段。然后使用游标查询了水果的名称和价格,并将结果输出。最后对游标进行了关闭操作。通过本文可以了解到游标在数据库操作中的应用。 ... [详细]
  • 本文介绍了机器学习手册中关于日期和时区操作的重要性以及其在实际应用中的作用。文章以一个故事为背景,描述了学童们面对老先生的教导时的反应,以及上官如在这个过程中的表现。同时,文章也提到了顾慎为对上官如的恨意以及他们之间的矛盾源于早年的结局。最后,文章强调了日期和时区操作在机器学习中的重要性,并指出了其在实际应用中的作用和意义。 ... [详细]
  • 本文讨论了如何使用IF函数从基于有限输入列表的有限输出列表中获取输出,并提出了是否有更快/更有效的执行代码的方法。作者希望了解是否有办法缩短代码,并从自我开发的角度来看是否有更好的方法。提供的代码可以按原样工作,但作者想知道是否有更好的方法来执行这样的任务。 ... [详细]
  • 怎么在PHP项目中实现一个HTTP断点续传功能发布时间:2021-01-1916:26:06来源:亿速云阅读:96作者:Le ... [详细]
author-avatar
路过然后错过
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有