李 朋,卢洪义,朱 敏,于光辉,徐 明
(1.海军航空工程学院,烟台 264001;2.91213部队,烟台 264001)
在固体火箭发动机的故障诊断过程中,如何对不同类型缺陷进行距离测量,从而进一步评估具体缺陷对发动机的影响,是固体火箭发动机无损检测研究中的一项重要内容。固体火箭发动机ICT探伤技术是国内外使用最广泛、最先进的无损检测方法,国外航天部门和军方已经推出了产业化的大型ICT检测系统,如美国的ARACO公司、BIR公司、LIVEMORE实验室以及德国的YXLON(依科视朗)公司等在大型ICT基础上,均已成功实现固体火发动机三维可视化缺陷识别[1]。近年来在二维ICT探伤图像的基础上,清华大学、中科院高能物理研究所、中国工程物理研究院、海军航空工程学院、中北大学、华北工学院等单位也相继展开了ICT断层图像三维重构的理论算法研究,提出了一些工业上可行的算法,实现了被测物体的三维成像[2-3]。然而,仅仅提供三维可视化虚拟结构是远远不够的,还应该针对固体火箭发动机故障诊断的要求,进一步对生成三维图像进行直观的交互式测量研究,以对发动机中缺陷的长度、深度等特征参数进行精确测量。
目前的三维测量大都是在面绘制的基础上进行的,文献[4-5]分别通过利用 VTK(visualization toolkit)软件开发包[6-7]中提供的针刺取点算法类,实现了对牙齿表面和颅面的三维测量。由针刺取点法的特点可以看出:针刺取点法是建立在面绘制基础上的,可以很好地满足医学方面对三维测量的需要,但对固体火箭发动机而言,由于面绘制的三维剖切没有实际意义,只能对三维重建物体表面点进行测量,无法直接测量发动机内部的结构与缺陷,且面绘制前必须先对固体火箭发动机三维体数据进行分割,精度不高,极大地限制了固体火箭发动机交互测量的应用。
本文研究了基于面绘制的针刺取点测量法,并根据固体火箭发动机体数据的特点及诊断需求提出了基于体绘制方法的轨迹球交互测量方法,实现了在不进行三维分割的情况下,对发动机缺陷进行交互测量。
针刺法的局限性是取点时只能取到最表面的点,所以只能测量到表面信息。而对于体绘制而言,由于其未进行数据分割、不构造中间几何图元,针刺法无法取到发动机上相应的点,因此无法对其进行针刺测量。本文针对体绘制的特点提出轨迹球交互测量方法。
轨迹球交互测量方法的主要原理是在世界坐标系统下同时建立2个用于交互测量的轨迹球模型和固体火箭发动机三维模型,移动轨迹球到固体火箭发动机模型上感兴趣的位置,然后通过提取轨迹球模型在显示坐标系上的坐标信息便可得到相应感兴趣点所在的模型坐标系统下的坐标值,进一步便可得到距离信息。其流程如图1所示。
图1 轨迹球交互测量方法流程图Fig.1 Flow chart of“ball trace ”interactive measurement
由轨迹球测量方法原理可看出,其与针刺测量方法的区别主要有以下几点:
(1)绘制基础不同。针刺法基于面绘制,而轨迹球测量方法基于体绘制。
(2)取点方式不同。针刺法通过发出的射线与面片求交点来拾取,轨迹球测量方法通过移动轨迹球到相应位置来拾取。
(3)应用范围不同。针刺法仅能获取表面距离信息,轨迹球测量方法可在三维图像剖切后获取到图像内部信息。
轨迹球法交互测量是在体绘制的基础上进行的,为了能够测量体数据场中各个位置的距离、长度信息,必需对体数据进行平移、旋转、缩放和剖切等交互式操作。
固体火箭发动机可视化过程中需要对发动机体数据进行基本的几何变换,基本的几何变换主要包括平移、缩放和旋转,若要进一步观察发动机内部结构还需要对其进行剖切。当在三维空间中创建对象,显示的时候是把它投影到二维图像平面上,为了更方便的表示,在这里引入同构坐标。对于三维空间的坐标点(x,y,z)用同构坐标就是(xh,yh,zh,wh),二者之间的转换关系为
其中,wh在大多数情况下值为1,当表示一个无穷远点时,就可设置wh=0。这样平移、缩放和旋转操作可通过4×4矩阵变换来实现,其中变换矩阵分别如下各式。平移变换:
比例变换:
绕坐标轴旋转:
虚拟剖切技术可由文献[2]中描述的方法进行剖切。在固体火箭发动机模型坐标系中定义剖切面,则当剖切面进行剖切时不影响世界坐标系下其他模型坐标系中的模型。
在世界坐标系内,同时生成2个模型坐标系统,即固体火箭发动机模型坐标系统与轨迹球模型坐标系统。则在最终体绘制完成后在用户屏幕上便会显示出固体火箭发动机三维模型与轨迹球。对2个模型系统同时进行旋转,然后单独移动轨迹球系统。由于显示在屏幕上的图像是二维的,要取得三维信息,必须对轨迹球进行2次移动。
如图2所示,设固体火箭发动机三维模型中的某一点的A模型坐标为(xm,ym,zm),世界坐标为 A(xw,yw,zw),经过变换矩阵T后,模型坐标不变,世界坐标变为 A'(x'w,y'w,z'w),屏幕坐标为 A(x'd,y'd)。其中:
轨迹球中心点的O模型坐标为(xgm,ygm,zgm),世界坐标为O(xgw,ygw,zgw),经过变换矩阵T后,模型坐标不变,世界坐标为O'(x'gw,y'gw,z'gw),屏幕坐标为O(x'gm,y'gm)。其中:
在计算机屏幕上通过交互操作拾取轨迹球,在当前投影平面下对轨迹球进行移动操作,将其与固体火箭发动机模型上点重合,可在当前平面下获取轨迹球屏幕坐标O(x'gd,y'gd),则在可确定2个关于A点模型坐标的参数方程:
进一步将轨迹球绕坐标轴方向旋转,2点重合后A对应的坐标为
式中 a1、a2、a3等参数均与输入的变换矩阵相关,为已知条件。
通过2次移动操作将轨迹球移动到感兴趣点,则固体火箭发动机模型上该点的坐标与轨迹球相同,便得到发动机上感兴趣点的模型三维坐标(xm,ym,zm)。
类似的,可取到另一点B的坐标,由式(3)便可得到2点之间的直线距离。
图2 同一点坐标变换示意图Fig.2 Diagram of the coordinate transformation of the point
实验设备为海军自行研制的“固体火箭发动机无损检测自动化系统”(HICT-X450)。试验发动机为星孔装药,其中一个星角被切除,在横截面药柱与绝热层之间用薄刀片制作一脱粘长度为3 cm、轴向深度为1 cm的脱粘,ICT扫描图像如图3所示。
图3 实验所用发动机二维CT图像Fig.3 2D CT image of experimental solid motor
对获取到的CT数据进行三维重建,分别都通过针刺法与轨迹球法进行交互测量,在CPU为酷睿2,主频1.8 GHZ,内存2G的微机上实现2种测量方法。
(1)CT数据面绘制
面绘制首先经过三维分割,在三维数据场中构造出中间几何图元,然后实现画面绘制,图4(a)所示为CT数据重建出的原始三维图像。
(2)针刺取点
通过反复针刺取点,获得感兴趣部分2点的坐标,过程如图4(b)、(c)所示。
(3)计算距离
由公式(4)获取2点间的距离,如图4(d)所示。
由于面绘制只绘制几何图元,深度信息无法测量,图(e)为对面绘制的三维图像进行剖切后的结果,剖切图表明,面绘制的三维图像为一空壳,剖切后无法显示 内部结构。
图4 针刺式交互测量示意图Fig.4 Diagram of“needle puncturing”interactive measurement
(1)CT数据体绘制
体绘制直接由三维数据场产生屏幕上的二维图像,如图5(a)所示,在生成固体发动机三维图像的同时,生成了2个轨迹球。
(2)操作轨迹球取点
移动轨迹球到感兴趣的点上,通过读取轨迹球的坐标以确定感兴趣点的坐标,过程见图5(b)、(c)。
(3)对感兴趣部分剖切,重新操作轨迹球取点,进行深度测量。
剖切过程如图5(d)、(e)所示,剖切工具由6个剖切面组成,可实现对固体发动机三维图像的任意面剖切。切除壳体后,可清楚地观察到缺陷的形状,进一步对于缺陷的深度信息进行测量,过程见图5(f)、(g)。
(4)计算距离
由式(3)获取2点间的距离。
图5 轨迹球交互测量示意图Fig.5 Diagram of“ball trace”interactive measurement
测量结果如表1所示。
此次测量中,针刺式测量方法只能测量脱粘长度,产生的误差为4.3%,轨迹球测量方法对脱粘长度及脱粘深度进行测量,产生的误差为1.8%。由于存在人为误差,每次测量结果误差并不相同,但相较于针刺测量,轨迹球测量方法总体精度较高。CT交互测量产生误差的原因主要有以下几点:
(1)系统误差。主要由 ICT设备误差引起。HICT-X450设备的密度分辨率为0.5%,空间分辨率为 1.6 Lp/mm[8]。
(2)人为误差。在距离测量方面,人为误差的产生主要在点的选取上,对点选取的不精确会对结果产生较大影响。
相较于针刺法的反复针刺以选取缺陷的端点而言,轨迹球法选取点的过程更加直观化和便于操作,有利于减小人为误差。
表1 交互测量结果Table 1 Results of interactive measurement
(1)固体火箭发动机故障诊断要求能够对发动机缺陷的长度、深度等特征参数进行测量。医学成像中采用的针刺式交互测量方法建立在面绘制的基础上,无法满足测量要求。根据固体火箭发动机诊断需求提出的基于体绘制的轨迹球测量方法能够较好的对固体火箭发动机缺陷进行体空间精确测量。
(2)轨迹球法测量方法建立在ICT图像的体绘制基础上,能够测量针刺法所不能测量的固体火箭发动机缺陷深度信息。相较于针刺取点,轨迹球取点更加直观,能够减小人为误差,从而提高测量精度。
[1]A Armistead Robert.Advanced x-ray systems for nondestructive inspection and contraband detection[C]//In Part of the SPIE Conference on Penetrating Radiation Systems and Applications.Colorado,1999:102-105.
[2]朱敏,卢洪义,李海燕.固体发动机虚拟剖切故障诊断技术研究[J].固体火箭技术,2010,33(2):232-236.
[3]朱敏,卢洪义,肖志斌.固体发动机CT图像的一种自动分割方法[J].固体火箭技术,2008,31(2):201-204.
[4]林晓梅,魏巍,张超.基于医学图像的交互式三维测量技术研究与实现[J].长春工业大学学报,2006,27(1):24-26.
[5]姚继权,李晓豁.计算机图形学人机交互中三维拾取方法的研究[J].工程设计学报,2006,13(2):116-119.
[6]Schrocdcr W I,Avila L S,Martin K M.Visualizing with VTK[J].A Tutorial IEEE Computer Graphics and Application,2000,20(5):20-27.
[7]William J Schroeder.The VTK User's Guide[M].2001:40-50.
[8]卢洪义.战略导弹固体发动机无损检测关键技术研究[D].烟台:海军航空工程学院,2005:20-21.