一种基于Unity 3D的三维体表面重构与渲染方法
【专利摘要】本专利提出了一种基于Unity 3D的三维体表面重构与渲染新方法,专利成果可适用于3D打印。本方法专利的技术主要步骤如下:(1)目标物体三维图像采集和处理,本专利采用切片断层扫描,然后利用拉普拉斯算子得到目标物体曲面边缘数据;(2)三维目标物体表面数据重构,通过线性插值方法计算等值点的位置,通过中心差分方法计算出等值点的法向量,利用三角网格化计算等值点相应表面数据;(3)目标物体的表面渲染,在Unity 3D下读入目标物体三维表面数据,选择光照,色彩等指标对重构三维物体表面渲染。大量的实验证明,这种三维重构和渲染方法是十分有效,得到的结果在立体感和视觉效果上强于现有的技术方法。
【专利说明】-种基于Unity 3D的Ξ维体表面重构与這染方法
[0001] 本发明主要是对二维图像进行Ξ维图形重构和擅染的新技术,具体设及一种基于 Unity 3D的Marching Qibes重构方法和Mesh擅染技术。
【背景技术】
[0002] Ξ维重构是计算机视觉技术研究的主要内容之一,应用在工程技术和其他很多领 域。一般要对物体进行Ξ维分析,从而得到对研究或展示的有用信息。基于二维图像Ξ维重 构技术的研究具有重要现实意义,而且具有广阔的应用范围,包括考古学,建筑学,W及材 料加工,工业检测W及医疗成像设备等领域。
[0003] 当前的Ξ维重构方法大致可W分为两类:一种是体绘制方法,另一种是表面绘制 方法。虽然运两种方法都是用于Ξ维重构的研究,但运两种方法的侧重点并不相同。体绘制 方法是一种直接由Ξ维数据场产生屏幕上二维图像的技术。而表面绘制是根据Ξ维数据 场,计算得到表面体数据,再绘制表面。体绘制比表面绘制计算量更大,计算时间更长,限制 了图像绘制速度,主要原因是其贡献了内部信息的呈现。
[0004] 在表面绘制方法中,已经有不少专家做了探索。1987年,Lorensen和Cline提出了 一种Marching cubes的表面重构方法。1992年,Nielson和化mann等人提出了利用渐近线判 别解决Marching Cubes存在的歧义问题。2003年,Lopes等人一种基于Marching Qibes的改 进算法,即增加目标等值面的逼近点来绘制更精确的表面。上述方法虽然取得了不错的效 果,但没有应用在化ity 3D上,使绘制结果展现更逼真。
【发明内容】
[0005] 本发明的目的在于提出一种基于化ity 3DS维体体表面重构与擅染方法,W提高 Ξ维绘制的展现效果。在该发明中,用户提供输入目标断层图像,就可让计算机进行分析, 最终获得Ξ维重构结果。
[0006] 本发明的技术方案如下:
[0007] 步骤1,使用计算机断层技术(CT)或磁共振成像(MRI)对目标物体进行扫描,获得 多张断层BMP格式图片。
[000引步骤2,使用Marching Cubes技术对步骤1的多张图片作为输入,在Marching 化bes中加入自动识别目标的边界得到阔值。识别的原则是当图片灰度变化时,灰度的一阶 方向导数在局部最大,或二阶导数为零,即阶梯型边缘曲面上的Laplacian函数值为零。
[0009] 步骤3,Marching化bes算法根据阔值计算,获得Ξ维空间体表面的数据。
[0010] 步骤4,在化ity 3D中对步骤3中获得的Ξ维空间体数据进行访问,获得Ξ维空间 体数据进行实例化。
[0011] 步骤5,利用化ity 3D下的Mesh网格技术W步骤4中得到的Ξ维空间体数据作为 Mesh的Vertices属性和Normals的输入,并自适应分配满足体数据需要Mesh网格数量。
[0012] 步骤6,将化ity 3D下的mesh进行光照,颜色,纹理等擅染,绘制完成。
【附图说明】
[0013] 读者在参照附图阅读了本发明的【具体实施方式】W后,将会更清楚地了解本发明的 各个方面。其中,
[0014] 图1为本发明基于化ity 3DS维体表面重构与擅染方法的流程图;
[0015] 图2为本发明步骤3到步骤8的重要过程的过程图;
[0016] 图3为本发明步骤6中提到的33种立方体表面绘制情况展示图;
[0017] 图4是根据数学公式模拟出的断层切片图片,用本方法在化ity 3D下展示的结果 图。
【具体实施方式】
[0018] 步骤1,使用计算机断层技术(CT)或磁共振成像(MRI)对目标物体进行扫描,获得 多张断层BMP格式图片。
[0019] 步骤2,使用Moving化bes技术对步骤一的多张图片作为输入,在Moving Cubes中 加入自动识别目标的边界得到阔值。识别的原则是当图片灰度变化时,灰度的一阶方向导 数在局部最大,或二阶导数为零,即阶梯型边缘曲面上的Laplacian函数值为零。Laplacian 公式如下:
U)
[0020] 步骤3,Ma;rching Cubes算法。根据步骤1的多张断层切片图,依次选取相邻两张切 片图。再依次选取运两张图片中的相邻四个像素点,构成空间立方体。对运立方体的八个顶 点 ¥1。= 1,2,3,4,5,6,7,8),构建顶点状态:
(2)
[0021] 其中Vi表示在立方体的顶点像素值,R表示步骤2所算的边界阔值,即目标物体的 边界像素阔值。SVi = 0,则表示该立方体顶点在目标外围,反之,则表示该立方体顶点在目 标内部。
[0022] 步骤4,根据其立方体的顶点状态,判断目标等值面与此立方体某条棱线是否有相 交,判断如下:
C3) 以表示立方体的第i条棱,SVo,SVi表示运条棱上的两个顶点的状态,当顶点状态一样则 表示,两顶点都在目标等值表面的里头或外头,否则,表示该棱与等值表面有一条交线。
[0023] 步骤5,现知道是否有交线后可W算交点的位置,此交点就是在等值面上的等值 点。如果一个单位长度边E的端点Vi和Vo的标量像素值分别为^和^,那么对固定的阔值R, 交点位置1 = (11山山)计算公式如下: I{x,y,z}=V〇{x,y,z}+p(Vi{x,y,z}-V〇{x,y,z}) (4) 式中,P=(a-L〇)/(Xi-L〇)。
[0024] 得到公式(4)所计算的交点后,还要计算交点处的法向量,体数据就包含了交点及 交点处的法向量。
[0025] 在立方体中由梯度来表示法向量,计算规则:令f(i,j,k)表示图像在Ξ维规则网 格采样点(i,j,k)处的灰度值,那么在各个方向的梯度可W有中屯、差分简单估算,如下公 式:
(5) 良P(x,y,z)处的梯度向量是{Gx,Gy,Gz},梯度大小是
[0026] 步骤6,Ma;rching Cubes的立方体有八个顶点,每个顶点都有可能在目标内部或外 部或目标等值面上,所有立方体的交点连线方式总共有28种,通过旋转对称,消除重复的情 况,最终只剩33种,Marching Cubes提前建立离线索引表,只要得到步骤6所计算得到的交 点,就能查找索引表,把所计算的所有交点,Ξ个交点相连接即Ξ角化,来逼近目标等值面。
[0027] 步骤7,我们在化ity 3D下获取步骤6的所有交点及其连接方式,用Mesh网格按规 则输入到VeKices和Normals中进行重构Ξ维表面。
[0028] Unity 3D下一Mesh网格最多可W绘制65000个顶点的面片,在运里需要对输入的 体数据进行分段绘制,最终组合起来的Mesh网格完整了展示了目标表面。
[0029] 步骤8,对化ity 3D下Mesh网格进行进行光照,颜色,纹理等擅染,绘制完成。
【主权项】
1. 一种基于Unity 3D的三维体表面重构与渲染方法,其特征在于:在重构三维图形时, 进行以下步骤: 步骤1,使用计算机断层技术(CT)或磁共振成像(MRI)对目标物体进行扫描,获得多张 断层BMP格式图片; 步骤2,使用Moving Cubes技术对步骤1的多张图片作为输入,从而获得目标物体表面 的三维空间体数据; 步骤3,在Unity 3D中对步骤2中获得的目标表面三维空间体数据进行访问,并对体数 据进行实例化; 步骤4,利用Unity 3D下的Mesh网格技术自适应分批次对步骤3中得到的三维空间体数 据作为Mesh的Vert ices属性和Normals属性的输入; 步骤5,将Unity 3D下的Mesh网格进行光照,颜色,纹理等植染,绘制完成。2. 根据权利要求1所述的Unity 3D的三维体表面重构与渲染方法,其特征在于:步骤4 所述的自适应分批次处理体数据是由于,一个Mesh网格面片最大支持的Vert ices个数为 65000个,而一般重构目标的体数据中Vertices远多于这个数量,故程序首先建立长度为10 的静态Mesh数组,依次对每个Mesh对象按顺序输入Vertices和Normals属性值,如果体数据 输入10个Mesh后还剩下一些数据没有处理,则动态的分配Mesh,再给其输入数据,直到所有 体数据处理完毕,上面提到的数字10是实验得到的保持效率最好的数值。3. 根据权利要求1所述的Unity 3D的三维体表面重构与渲染方法,其特征在于:步骤5 所述的进行光照,颜色,纹理等渲染方法为,Unity 3D重构目标后,对重构结果进行展示,添 加 Directional Light光照模型,以提供光亮让重构结果可以反射光。另外给Mesh面片都添 加 Materials,使用Unity 3D库中已有的Shader或者自己编写Shader代码来调节Mesh面片 的颜色,调节颜色的主要属性有Main Color和Specular Color,还可以在Shader代码中添 加纹理,Select选择最合适的表面纹理,这样绘制结果就更加逼真。
【文档编号】G06T15/00GK105825471SQ201610141651
【公开日】2016年8月3日
【申请日】2016年3月13日
【发明人】袁玉波, 汤伟, 赵婷婷, 邱文强, 溥冬梅, 阮彤, 高炬, 冯东雷, 殷亦超
【申请人】华东理工大学