Abstract: aiming at the radiation treatment planning systems GyroRTPS need, are given a radiation dose distribution of 3 d visualization method, to help doctors check lesions from any section of radiation organization the dose distribution situation. This article first discusses the system of body data and the data of the coordinate transformation, dose calculation of interpolation pretreatment; And then, according to the VTK toolkit can handle data types of data transfer, is given based on VTK realize the dose distribution and its 3 d display and body of data fusion method shows.Test results and clinical use an example shows that the method based on the development of software system run reliably, can better help doctors in radiation treatment decisions.
Keywords: medical treatment planning system; Radiation; The dose distribution; Visualization methods
摘要:针对放射治疗计划系统GyroRTPS需要,给出了一个放射线剂量分布三维可视化的实现方法,以帮助医师多角度查看病灶组织任意剖面上的放射线剂量分布情况。首先论述系统中对体数据和剂量数据的坐标变换、插值计算等预处理;然后根据VTK工具包中可处理的数据类型对数据进行转换,给出了基于VTK实现剂量分布三维显示及其与体数据融合显示的方法。实例测试结果和临床使用表明,基于该方法开发的软件系统运行可靠,可更好地辅助医师进行放射治疗决策。
关键词:医学治疗计划系统;放射线;剂量分布;可视化方法
0 引言
治疗计划系统(Treatment Planning System, TPS)是伽玛刀治疗的配套软件。在临床放射治疗前,通过对满足DICOM(Digital Imaging and Communications inMedicine)的医学序列CT ( Computed Tomography)或MRI (Magnetic ResonanceImaging)等图像的分析,实现对病灶区域的精确定位,同时由治疗计划系统模拟射线照射时的剂量分布情况[1-2],辅助医生制订准确的放疗方案,使放射治疗最大限度杀死癌变细胞的同时,避免或减少对正常组织和重要器官的伤害。
简单的二维TPS依据某一方向的CT切片数据进行模拟放射,只能显示单张切片上的剂量分布情况,不能全面地反映病灶区的受剂量情况,无法模拟真实的立体放射治疗。
一个完善的放射治疗TPS[3],需要精确描述病灶区域和正常组织的空间关系,建立准确的剂量分布数据场[4],最终能够对人体患病组织的剂量空间分布进行多角度多层面的可视化显示处理,帮助医生制订准确详尽的放射治疗方案,以期达到提高放射治疗精度、减少放射损伤的目的。对剂量分布采用三维立体方式的可视化,将成为伽玛刀放射治疗中一个不可缺少的功能。
1 二维剂量分布显示
剂量通常是指一次给药后产生药物治疗效果的数量,这里则用于表征射线强度。在伽玛刀放射治疗的配套软件TPS中,剂量分布是指伽玛射线的粒子照射到人体中能量吸收的空间分布。剂量计算一般由TPS中的单独模块完成,剂量计算完成后,空间某点的剂量值存放在一个三维数组中供显示模块调用。传统的剂量显示按照等值线绘制方式得到平面等剂量线图,如图1所示;或者显示空间各层的等剂量云图,如图2所示。
虽然平面显示可方便地查看某一切片上的剂量分布情况,但是无法提供一个三维(立体)的剂量分布显示[5],医生也无法从整体上查看受照射病灶组织中剂量分布情况,所以仍然需要医生依靠经验,由多幅二维图像估计病灶组织的大小及形状,“构思”剂量分布与病灶组织的三维几何关系。
2 体数据和剂量数据的预处理
随着计算机图形学和科学计算可视化技术的发展,可以很方便地利用一些可视化工具包(例如VTK等)对体数据进行三维重建,并对绘制结果提供任意面剖切显示[6]。本文依据作者所在项目组从事研发的“陀螺刀”放射治疗计划系统GyroRTPS(Gyro Radiotherapy Treatment Planning System)来探索利用VTK进行剂量分布的三维可视化研究。本文中涉及的体数据为符合DICOM协议的CT或MRI图像数据,剂量则依据“陀螺刀”设备的制造原理由GyroRTPS计算得到。
2. 1 坐标转换
在GyroRTPS中,由剂量计算模块计算得到的剂量数据存放在一个float型的三维数组中,其计算是在如图3所示的坐标系中进行。为了使处理的数据量尽可能小,并不是对每张图片的所有像素都做处理,只计算兴趣图像区内的剂量分布,兴趣图像区的大小和位置由医师勾勒得出。所以,剂量数据的分布原点也不是坐标系的原点。
如图3所示,剂量分布原点所在的坐标系为计算剂量数据时所用的坐标系,其外层的坐标系则为原始图像所在坐标系,两者所用并不是一个坐标系。而在对DICOM图像序列进行三维重建时的坐标系(在此只考虑XY轴方向的二维坐标系)则是以原始图像坐标系的点(0,N)为原点(N为原始DICOM图像的宽度),以向右为X轴正方向,以向上为Y轴正方向,X轴与原始DICOM图像下边重合的坐标系。所以在对原始剂量数据进行三维重建之前,必须进行坐标转换,将剂量坐标系下的剂量数据转换为三维重建坐标系下的数据。
设原始图像所在坐标系为S1,剂量分布坐标系为S2,三维重建坐标系为S3。现已知剂量分布坐标系S2的原点在S1中的坐标为(x1,y1),三维重建坐标系S3在S1中的坐标为(0,N),N为原始DICOM图像的宽度。现在的工作是需要将剂量坐标系S2下的所有点转换到坐标系S3下。设坐标系S2下任意一点的坐标为(x2,y2),转换到坐标系S3下的坐标为(x,y),则转换公式为:
x =x1+x2(1)
y =N -y1-y2(2)
又由于坐标系S1的度量单位为像素长度,而坐标系S2和S3的度量长度均为物理长度,故还需要对数据在像素单位和物理单位之间作一个转换。对于固定的DICOM图像序列,其像素长度和物理长度的比例都是一致的,所以可以将所有的坐标转换都按同一比例进行。在DICOM的头文件中,从0028, 0030处可以读到该转换比例,以H和V表示。由于坐标系S2和S3的度量长度单位一致,故只需要对坐标系S2原点在S1中的坐标进行转换即可。最后转换公式为:
x =x1×H+x2(3)
y = (N -y1)×V-y2(4)
2. 2 插值处理
VTK所处理的DICOM图像序列中,每张切片之间都有一定的间距,如图4所示。这个距离可以从DICOM头文件的0018, 0050处读得,也可以通过从0020, 0032处读取DICOM图片的位置,用相邻两张图片位置的值相减求得。VTK在对其进行处理的时候,需要选择一种插值方法,对这些间隔进行插值处理。由于剂量值是根据每张DICOM图片计算的,并没有两张DICOM图片间隔处的剂量值,故在对剂量分布进行三维显示的时候也需要进行插值处理。由于人体CT值在同一组织中可近似认为是连续分布,故选用比较简单、计算速度比较快的线性插值处理。
在对剂量数组进行处理时,系统采用只处理剂量值D大于10%最大剂量值Dmax的数据即D≥0.1Dmax,舍弃其他剂量数据的处理,这样可以大大减少需要处理的数据。故在进行插值显示的时候,也只考虑连续两张DICOM图片上,相邻两点在Z轴方向上剂量值至少有一个点大于最大剂量值10%的部分。对插值计算出的剂量值,也要进行一次判断,去掉所有小于0.1Dmax的数据,尽最大可能地减少需要处理的数据,提高系统绘制速度。
线性插值时,按读到的两张DICOM图片的间距来决定插值的层数。例如,假设相邻的两张DICOM图片A和B的间距是s,在图片A、B上相邻两点的剂量值分别是P1和P2,则需要在该相邻两点间插值s+1层数据,第n层剂量的值P为:
P =P1+n×(P2-P1) /(s+1)(5)
对三维剂量数组中Z轴方向的每一层剂量数据都按照式(5)进行插值处理,最后得到一个新的三维剂量数组来进行剂量的显示处理。
3 剂量分布的三维可视化方法
3. 1 剂量的三维显示
在对剂量分布进行三维绘制之前,需要将剂量数组构造为VTK可以处理的数据类型。根据VTK中数据结构(主要是几何结构和拓扑结构)的不同,可以将其数据类型分为5种[7]。
1)结构化点集(Structured Points)。
其点与cell(单元,相邻的八个采样点构成的立方体)的排列是规则地放在方形的格子里。在三维医学图像处理的项目中,读入图像文件的数据就是这一种类