医学脏器VRML三维重建的动态切割

作者:禹正扬;郑树森;陈槐卿;王建军;熊庆文;敬万钧;曾郁 刊名:生物医学工程学杂志 上传者:蓝秀珍

【摘要】运用虚拟现实建模语言(VRM L)进行医学脏器三维重建,探讨JavaScript语言在重建后模型动态切割中的应用。基于患者实例,在对D ICOM 3.0标准医学二维图像后处理基础上,利用VRM L建模进行脏器三维重建并利用VRM L的Script节点、传感器节点,实现三维医学模型的动态切割。通过VRM L建模得到较高质量的脏器立体图像并提供较好的人机实时交互环境,结合JavaScript能实现重建脏器的动态切割、移动、旋转等功能。利用VRM L建模进行医学脏器三维重建并结合JavaScript对三维模型进行动态切割,在成像质量和实时交互性等方面具有一定的优越性,有较大的临床实际应用价值。

全文阅读

1引言对三维模型进行动态切割是医学图像三维重建(3DReconstruction)与显示后的一个重要内容,对于医生尤其是对外科医生来说,对那些很难触及和术中无法用肉眼直接看到的组织器官内部,在三维可视化的同时,实现精确的动态切割显得十分必要。我们前期已经利用虚拟现实建模语言VRML(Virtualrealitymodellanguage)对医学图像进行了三维重建。利用VRML浏览器插件提供的交互环境,我们可以对重建后的三维医学模型进行一些简单的三维交互控制(如:平移、放大、缩小和旋转等),图像显示质量和交互速度尚可。由于VRML浏览器缺乏底层控制,三维重建后通常只能提供外观显示而不能观察器官内部情况,这不利于医生对于病灶的微观观察和局部判断。我们利用VRML的Script节点、传感器节点,结合JavaScript语言,实现了VRML三维重建后的动态切割,增强了VRML三维重建后的动态控制和交互性。2方法与步骤2.1利用VRML对医学体数据进行三维重建动态切割的前期处理工作包括:对二维医学断层图像预处理的基础上,利用VRML对处理过的二维图像进行三维重建,建立起动态切割的三维模型对象[1]。2.2动态切割的原理与算法动态切割的原理:由于三维模型是由数量不定的Shape造型节点组成的,而这些造型节点的ge-ometry域使用的是IndexedFaceSet节点。我们使用IndexedFaceSet节点创建一个正方形的几何平面;同时,给上述几何平面设置对应的纹理。这样,通过切割面和几何平面的表达式来判断切割面与该几何平面的位置关系。如果形成切割,则计算出切割面与几何平面的交点,这样就可以得到切割后的几何平面和纹理的相对位置坐标,由此可以得到新的造型(即切割后的造型)。动态切割的算法:假设由传感器传递过来的三点分别为P1(x1,y1,z1)、P2(x2,y2,z2)、P3(x3,y3,z3),构成矢量P1P2(a1,b1,c1)、P1P3(a2,b2,c2)。设由矢量P1P2、P1P3决定的平面(切割面)为:Ax+By+Cz+D=0。另设构成造型几何的正方形的4个顶点(x01,y01,z0)、(x02,y01,z0)、(x02,y02,z0)、(x01,y02,z0),则正方形的四条边的直线分别为:L1:y=y01+t(z=z0)L3:y=y02+t(z=z0)L2:x=x02+t(z=z0)L4:x=x01+t(z=z0)其中直线L1与L3平行,L2与L4平行。直线L1与L3的法向方向为(0,1,0),直线L2与L4的法向方向为(1,0,0);平面的法向方向为(A,B,C)。故如果A=0,则切割面与直线L1、L3平行,只与直线L2、L4相交,见图1(a);如果B=0,则切割面与直线L2、L4平行,只与直线L1、L3相交,见图1(b)。否则,切割面将分别与L1和L3、L2和L4相交。图1切割面只与平面几何造型的两条边相交时的切割情况Fig1Concisionfaceintersectwithonlytwosidesofplanegeome-trysculpt切割面与各直线都相交时,与其中的每条直线的相交有两种可能,一种是在正方形区域外相交,另一种是在正方形内相交。当切割面与正方形相交形成切割后,切割面将正方形划分成两个部分,有以下几种可能(见图2)。此时,可以根据切割面的法向方向判断出切割后的某一部分属于左右哪一个造型节点,同时赋予对应的纹理图案。具体地讲,图中当切割面与正方形的1、2边相交于E、F两点时(见图3),将正方形分成了两部分,一部分是多边形A

参考文献

引证文献

问答

我要提问