marching cubes算法介绍

上传人:n**** 文档编号:95951810 上传时间:2019-08-23 格式:PPT 页数:7 大小:296.50KB
返回 下载 相关 举报
marching cubes算法介绍_第1页
第1页 / 共7页
marching cubes算法介绍_第2页
第2页 / 共7页
marching cubes算法介绍_第3页
第3页 / 共7页
marching cubes算法介绍_第4页
第4页 / 共7页
marching cubes算法介绍_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《marching cubes算法介绍》由会员分享,可在线阅读,更多相关《marching cubes算法介绍(7页珍藏版)》请在金锄头文库上搜索。

1、MARCHING CUBES算法介绍,张岚,算法定义,Marching Cubes算法本名移动立方体算法,它是三维规则数据场等值面生成的经典算法,于1987年由Lorensen 和Cline 两人在Siggraph Proceedings 提出。处理的对象一般是断层扫描(CT),或是核磁共振成像(MRI)等产生的图像。 算法的基本思想是逐个处理数据场中的立方体(体素),分类出与等值面相交的立方体,采用插值计算出等值面与立方体边的交点。根据立方体每一顶点与等值面的相对位置,将等值面与立方体边的交点按一定方式连接生成等值面,作为等值面在该立方体内的一个逼近表示。之所以这样,是由于Marching

2、Cubes有个基本假设:沿六面体边的数据场呈连续性变化。也就是讲,如果一条边的两个顶点分别大于或小于等值面的值,则在该条边上有且仅有一点是这条边与等值面的交点。,MC算法实际上是一个分而治之的方法,因为其将等值面的抽取分布于每一个体素(voxel)中进行。对于每个被处理的体素,以三角面片来逼近其内部的等值面。每个体素是一个小立方体(cube),在构造三角面片的处理过程中对每个体素都“扫描”一遍,就好像是一个处理器在这些体素上移动一样,也因此而得名。在等值面抽取的过程中将一系列二维切片数据看做是一个三维的数据场,从中将具有某种阈值的物质抽取出来,以某种拓扑形式连接成三角面片。MC算法的基本思想是

3、逐个处理数据场中的立方体,找出与等值面相交的立方体,采用线性插值计算出等值面与立方体边的交点。根据立方体每一顶点与等值面的相对位置,将等值面与立方体边上的交点按一定方式连接生成等值面,作为等值面在该立方体内的一个逼近表示。,一些概念,体素:体素(voxel),是体积元素(volumepixel)的简称。一如其名,是数字数据于三维空间分割上的最小单位,体素用于三维成像、科学数据与医学影像等领域。概念上类似二维空间的最小单位像素,像素用在二维计算机图像的影像数据上。 等值面:所谓等值面是指空间中的一个曲面,在该曲面上函数F(x, y, z)的值等于某一给定值Ft,即等值面是由所有点S = (x,

4、y, z):F(x, y, z) = Ft组成的一个曲面。 阈值:它指的是触发某种行为或者反应产生所需要的的最低值,就是指一个临界值。,一般步骤,1.计算交点坐标:利用公式:P=P1 + (isovalue - V1 ) (P2 - P1 ) / (V 2 - V 1 ) ,P代表等值点坐标,P1、P2代表两个端点的坐标,V1、V2代表两个端点的灰度值, isovalue 代表阈值。 2.在四边形中讨论,每个顶点有大于或者小于阈值两种情况,那么4个顶点结合起来就有16中情况,图如下。但是考虑到旋转对称性,那么就只剩下4中基本情况,如第二张图。 3.在立方体中讨论,由于每一立方体共有8个顶点,每

5、个顶点共有2个状态(物体内和物体外),因此共有256(2的8次方)种组合状态,分析立方体体素的2种对称性: (1)顶点状态反转,等值三角面片的拓扑结构不变,也就是讲,大于等值面与小于等值面的点是可以相互替换的。 (2)旋转对称性,经过适当旋转,有许多状态是一致的。 这样,可归纳出15种模式。第三张图。,在实现时,可按照立方体顶点状态构造等值面连接模式的查找表,并可直接由立方体各顶点的状态检索出其中等值面的分布模式,确定该立方体体素内的等值面三角片连接方式。 MARCHING CUBE的歧义性:一个面上,如果一条对角线的两端点大于阈值,另一条对角线的两端点小于阈值的情况。在立方体中,我们把这种面称作歧义面。这里不做详述了。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号