文章编号:1000—3428(2003)14 0151——03
文献标识码:A
2003年8月 August 2003
TP391 中图分类号:基于ICP算法的医学图像几何配准技术李 斌1,吴 松2,王成焘1
(1. 200030上海交通大学机械与动力工程学院,上海;2. 200030上海交通大学研究生院,上海)
摘 要:几何配准是医学图像领域研究的重要内容,医学图像几何配准的目标就是建立术前和术中两组点的变换关系。该文利用股骨为模 型,讨论了基于轮廓特征的ICP医学图像几何配准算法,从技术上实现了术前建模和术中取点,并编制相应的ICP算法程序。关键词:几何配准;医学图像;ICP算法
Technique for Medical Image Geometrical Registration Based on ICP Algorithm
(1.College of Mechanical Engineering, Shanghai Jiaotong Univ.,Shanghai 2000302. Graduate School,Shanghai Jiaotong Univ., Shanghai 200030)【Abstract】Geometrical registration is an important research field in medical image. The goal of medical image registration is to establish a common reference frame between pre-surgical and intra-surgical 3-D data sets. This paper presents an ICP(iterative closest point ) algorithm based on contour feature. According to the example of femur model,it realizes three parts of geometrical registration:establishing pre-operative model,selecting intra-operative data sets,and programming ICP algorithm.
【Key words】Geometrical registration;Medical image;ICP algorithm
1 LI Bin 1,WU Song 2,WANG Chengtao
;
机器人技术、计算机技术、图像处理技术与临床外科手
术相结合,产生了一个崭新的研究领域——计算机集成外科手术系统(Computer Integrated Surgical systems and technology,CIS)。它旨在利用CT/MRI等图像信息并结合立体定位系统对人体解剖结构进行术前显示、术前计划和术中定位,在外科手术中利用医用机器人和计算机进行干预。外科手术也逐渐从医院外科医生的单独工作,转移到包括工程技术人员和康复人员在内的一个工程系统,由他们组成的医疗小组共同制定手术计划、实施临床手术以及安排手术后的康复。其中医学图像几何 配准是这个系统的关键技术,它完成两个不同空间中对应于同一医学解剖特征的两点间的映射。医生能够利用配准的有用信息进行手术计划,引导手术进行。几何配准主要由3个部分组成:术前模型的建立,术中数据的获取和配准计算。如图1所示。
数量的元素, 令k≥n。对集合U中的一个点ui,集合X
ui的距离最短的点被称为最近点。图像几何配准就 中与
是通过两个坐标系之间的旋转和平移,使得来自医学图像上
的同源点间距离最小。假设每对点
ui=(ui1,ui2,..,uim)和xi=(xi1,xi2,..,xim)都是三
(m=3),为了使它们配准起来,就要找到最优的旋转维点
[2]
矩阵R和平移向量T,满足目标表达式
minR,T
∑
xi−(Ru
i
+T
)2
其中,R是3×3的旋转矩阵;T是3×1的平移矩阵。为了解决这个问题,采用叠代最近点的方法:(1) 获得点集Y,Y⊆X,由X中对U距离最近的点组成;
[3]
(2)应用四元数法(quaternions),得到旋转矩阵R和配准向量T;
(3)将R和T作用于集合U;
(4)决定均方差值是否小于预先估计的临界值,如不是则返回到(1)继续进行。
2 术前建模及数据获取2.1 术前模型的建立在计算机集成外科手术系统中,全膝置换手术占很大比例,本文以股骨为例建立三维几何模型。首先采用CT扫描得到股骨内、外结构的截面二维几何信息。然后在Pro/Engineer软件中读取这些信息,进行二维断层CT图像的三维
[4]
重建,得到的股骨硬组织三维模型如图2所示。
图1 几何配准模块1 ICP基于的配准算法ICP配准算法(Iterative Closest Point Algorithm)最初由
[1]
Besl和Mckey提出,这是一种基于轮廓特征的点配准方法。对同一解剖结构,提取医学图像的轮廓,得到术前模型的一组点集 X={xi,i=0,1,2,..,k}和术中的一组点集U={ui,i=0,1,2,..,n}。其中U和X不必具有相同
作者简介:李 斌(1974-),男,硕士生,研究方向:机器人与计算机辅助手术;吴 松,教授、副院长;王成焘,教授、博导收稿日期:2002-07-18—151—
2
图股骨硬组织的三维模型2.2 获取术前模型的数据点为了得到股骨数据点的坐标,需要在Pro/Engineer中以IGES标准格式存储股骨模型,然后转入到ANSYS软件中进行取点。这里采用基本图形转换规范IGES(Initial Graphics Exchange Specification),它定义一套表示CAD/CAM系统中常用的几何和非几何数据格式以及相应的文件结构,解决了数据在不同CAD/CAM系统间进行传送的问题。
ANSYS工作平面有两个坐标系:一个是模型自身带的坐标系,称为模型坐标系,可以在工作平面上看到,它与断层CT图像的原始坐标系一致,也是Pro/Engineer软件建模的基准坐标,股骨模型始终都固定在这个坐标系中,各点的坐标值也不会发生变化;另一个就是工作平面坐标系,它的坐标原点在平面中心,股骨模型的旋转和平移都是相对这个坐标系。
在股骨配准过程中,为了提高配准的效率,可以直接选取股骨远端的点,从而忽略股骨近端的模型点。由于在Pro/Engineer软件中股骨模型都是由结点生成,可以在ANSYS软件中打开股骨模型,利用菜单命令ANSYS/Select/Entities/Keypoints选取股骨远端的结点,如图3所示。然后可以利用ANSYS/List/Keypoints/Coordinares only菜单命令输出模型的数据点,它显示了每一个点的编号,X、Y、Z坐标和其它一些值,它们的坐标值都是相对于模型坐标系。最后删除其它不相关的信息,只留下编号和X、Y、Z坐标,生成一个标准的TXT数据文件。
图 3 获取股骨远端模型点3 术中数据获取配准中的第二步是在手术过程中获取数据点集合。本系统采用加拿大NDI公司的Polaris光学立体定位系统作为实物空间运动信息和图像信息的来源,Polaris首先完成常规视频的采集,如图4所示。
采集对象包括手术场景以及标志物发来的红外信号。股骨在手术实施过程中,可以用3个或4个红外线标志表示。股骨将其位置信息通过标志传回计算机辅助系统,处理后可获
—152—
得它的相对空间关系。系统还可用探测器采集股骨的点坐标,探 测器上的红外线标志间接代表了
探测器的针尖。除了硬件设施 外,还有软件实现部分,它主要是由NDI公司自行开发并随产品一起发行。
在实际手术操作过程中,医生用探测器在股骨远端表面直接
图4 Polaris用于常规视频采集采集点,NDI软件会自动生成一个TXT数据文件。它由一系列点组成,包括点的编号(Frame)、对应的四元数(Q0, Qx, Qy, Qz)、点的3个坐标(X, Y, Z)、系统误差(Error)、系统偏差(Partially)和两个校正系数(OOV,OOV)。编制算法程序时,直接读取TXT数据文件中点的的编号和3个坐标即可。
4 ICP医学图像配准算法的实现本算法程序是在基于微机平台的
Windows 32位操作系
统下进行开发的,采用了
VisualC++6.0编程环境。本系统为了实现术前和术中两组点的配准,算法程序考虑到两个方面:数据点的表达和存储和算法的实现流程。4.1 数据结构技术(1) ICP_Point定义点类
为了表达从数据文件中获取每个点的坐标值,可以建立点的类。
class ICP_Point { public:
ICP_Point();
virtual ~ICP_Point();private:
ICP_Point *next;//指向下一个点的地址 int No_num;//点的编号
double x,y,z;//三维点的3个坐标};
(2) ICP_Link定义链表类
建立了每个点的表达方式,就要把每个数据文件的点组织并存储起来,链表是一种常见的重要数据结构,它根据需要开辟内存单元,能够方便地动态组织数据。本算法程序中采用单向链表,每个链表由一个一个结点构成,每个结点都包括数据部分和一个指向下一个结点的指针。而链表类ICP_Link结点的数据部分就是一个ICP_Point的指针对象,用来存放数据点的坐标值和编号。该链表类还可以进行链表建立、输出、获取链表的长度和求链表中所有数据点的重心。
class ICP_Link { public:
ICP_Link();
virtual ~ ICP_Link();
void Creat_Link();//建立链表
void Gravity_Link();//求链表的重心 void Print_Link();//输出链表
int Length_Link();//求链表的长度 ICP_Point *Gethead();//得到头指针Private:
ICP_Point *head;//链表的头指针 ICP_Point *p1,*p2;//临时链表};
4.2 算法实现
之间的距离便会减少,最终满足前面的目标表达式。
在ICP算法中要涉及到向量和矩阵的各种运算,而向量其实也就是多行一列的矩阵,所以在本程序中定义了一个矩阵类ICP_Matrix。利用矩阵类可以很方便地做矩阵的加、减、乘、求逆、求特征值和特征向量(采用雅可比Jacobi方法)。算法的流程如图5所示。
5 结论计算机集成外科手术系统是包括很多技术模块的一个复杂系统,本文讨论的医学图像几何配准就是其中的一个重要模块。配准模块的前两个部分都在技术层面上得以实现,算法程序也能够初步完成配准工作。
当然要让这个模块真正适用到实际的手术环境中,进入临床指导医生完成手术,就需要进一步加以研究。在配准算法的应用中, (配准精度与运算时间运算时间与叠代次数成正比)是两个最主要的因素,两者存在着此消彼长的关系。所以寻找加速算法,根据轮廓特征选取适当的坐标点是配准算法发展的方向。
参考文献1 Besl P J , McKay N D. A Method for Registration of 3-D Shapes. IEEE Trans. on Pattern Anal. and Mach. Intel,1992, 14:239-2562 Simon D. Fast and Accurate Shape-based Registration[Doctoral Dissertation].Tech. Report CMU-RI-TR -96-45, Robotics Institute, Carnegie Mellon University,1996-10
3 Horn B K P. Closed-form Solution of Absolute Orientation Using
图5 算法流程图Unit Quaternions. Journal of the Optical Society of America , 1987 , 4(4): 629-642
4 . OpenGL VC/VB江早图形编程. 2001北京:科学出版社,
算法以叠代的方式进行,每次叠代,术中点集U经过旋
转和平移,向术前点集X不断逼近。经过每次叠代,相应点
☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆(上接第76页)表2 调整后的销售立方体数据表地区维AAAAAABBBBAA…AA…SumSum…ABSumSum…SumSum…Sum产品维a-1a-1a-2a-3a-4a-4a-1a-3a-3a-4a-1a-2…SumSum…a-1a-1…SumSuma-1a-2…SumSum..Sum利润维较好好较好差较差差差中较好较好SumSum…好较好…较好好…SumSumSumSum…好较好…SumCount32941314331552444…936…329…7525444…943…100用Apriori_Cube改进算法搜索的频繁谓词集中包含频繁 3-谓词集,这样挖掘出的关联规则更能符合用户的需求。4 结论本文提出了Apriori_Cube改进算法,通过各维频繁1-谓词集的最大支持度max_support和最小支持度min_ support来判断维层次选择的高低,并及时利用上钻和下钻操作进行调整。这种方法将维层次的调整嵌入到关联规则挖掘过程中,增加了调整的针对性,使挖掘出的关联规则更符合用户需求。参考文献1 Han Jiawei,Kamber M.数据挖掘—概念与技术.北京:高等教育出版 社,2001杨学兵基于数据立方体的关联规则挖掘研究[硕士学位论文].2 .北京中国科学技术大学:,2000李立羽施鹏飞.OLAP关联规则挖掘.计算机工程与应用,2002,(3): 3 ,128胡和平陈 . Web鹰应用多维数据立方体开采日志的多维关联规4 ,则. ,1999,(10):35计算机应用研究裴健,柴 玮联机分析处理数据立方体代数软件学报5 .. ,1999,(6): 561—153—
因篇幅问题不能全部显示,请点此查看更多更全内容