FLUKA实操——DICOM数据导入及Voxel生成
如果能将DICOM数据导入到蒙卡系统当中,那么研究人员,尤其是物理师就可以做一系列研究工作,甚至包括治疗计划系统TPS无法完成的剂量分析研究。新版FLAIR3.1-13丰富了DICOM模块的功能,本系列文章将介绍这个模块的各项功能,供读者参考研究,详情请见质子中国往期报道《FLUKA高级应用——病人QA中的MC剂量验证计算》。新版FLAIR3.1-13 DICOM模块的改进项包括:
DICOM 界面在功能上进行了简化和增强; 新的 DICOM 编辑器可以执行简单的更改,如DICOM 文件的匿名化; Voxel自动生成并可以覆盖执行布尔操作; 用于交叉检查计算的增强型RTViewer; RTPLAN 处理,为离子和光子计划创建必要的束流参数; 将USRBIN转换为RTDOSE DICOM格式; 自动导出RTDOSE和USRBIN 的DVH。
先简单介绍一下DICOM。DICOM(Digital Imaging and Communications in Medicine)即医学数字成像和通信,是医学图像和相关信息的国际标准(ISO 12052)。它定义了质量能满足临床需要的可用于数据交换的医学图像格式。它广泛应用于放射治疗领域,被称为DICOM-RT。一般包括七个对象,即RT Image、RT Structure、RT Plan、RT Dose、RT Beams Treatment Record、RT Brachy Treatment Record和RT Treatment Summary Record。最主要的是前四个对象,现在都可以通过FLAIR的DICOM导入FLUKA。
将一组DICOM数据下载到Linux系统中,并解压出一系列.dcm文件放在Test文件夹下,如下图,其中CT开头的是RT Image影像对象文件,RD开头的是RT Dose剂量对象文件,RP开头的是RT Plan计划对象文件,RS开头的是RT Structure结构对象文件。影像文件的多少是CT或其他影像设备生成过程决定的,分层越细,影像文件越多。一般RT Structure、RT Plan、RT Dose一一对应,一个结构,一个计划对应一个剂量分布。
用命令行打开一个新的Flair界面,input里面是空的。点击右面的倒三角符号,下拉菜单中点击Dicom,进入DICOM模块。如下图:
点击Add,弹窗中选择刚刚导入解压的Test文件夹,单击Open:
点击Open后,在弹窗Select DICOM data set中用Ctrl+A全选所有文件,也可以只选择其中的某几项,这里建议全选。这个弹窗中有一些初步的信息,比如对象类型,日期,患者姓名,年龄,性别等,这里只是一个测试模型,所有没有真实信息。然后单击OK。如下图:
将文件保存到新文件夹DicomTest中,命名为DicomTest.fair。此时DicomTest.inp还是空文件。DICOM界面最左侧是文件树Dataset,可以看到CT、RTDOSE、RTPLAN、RTSTRUCT,对应前述的四个主要RT对象。点击Dataset中的CT,右侧显示CT影像的主要信息,包括层数,患者位置坐标,Voxel大小等信息。上方的菜单栏有Dicom、Editor、viewer、voxel等。另外Pixel data中还有三个功能项:Card、export、import。下面分别介绍其功能和使用方法。
选中CT对象,然后单击Editor就可以对任意一张Slice的信息进行编辑,例如,对Study Description的值进行修改。如下图:
Viewer是Dicom的查看器,底部可以调节灰度(亮度),设置不同的window center和width,也可以直接在Preset中选择下拉预留的值。拉动Slice,可以看到不同的层。这个界面下可以选择Voxel的范围,设定X、Y、Z的最大最小值,一般X和Y的范围要包含所关注的范围,比如整个体模的范围,Z方向点击Slice→Zmin和Slice→Zmax两个控件即可,也可以手动输入。这个黄色的方框内的将转化成FLUKA可以识别的Voxel体素模型,所以选取的时候需要格外注意。
体素的材料如何赋值呢,HU范围是多少呢,首先要在Flair的官网上下载辅助文件dicom.tgz,解压到本地。
里面有三个重要文件:body.mat、head.mat和material.inp。后面对材料进行赋值需要这些文件,但它们只是提供的例子,用户需要针对自身情况进行调整和修改。
例如material.inp中定义了不同HU下的材料组成分布。Flair也可以读取,如下图:
回到DicomTest.flair界面,点击Voxel,然后HU to material File选择刚刚下载的文件,作为示例,这里我们在弹窗中选择head.mat。对于某些选定区域,用户也可以通过RTSTRUCT and Material来重新定义材料。
在菜单栏空格地方写上Voxel的名字,这里命名为Vtest。然后点击右侧的控件VOXEL,就生成了体素文件Vtest.vxl,文件夹下可以看到此文件。再点击右侧Card控件,这个控件是把Vtest添加到inp文件当中,此时,可以看到DicomTest.inp已经不是一个空文件了,有269byte。
在inp中也能看到几何结构了,需要在Region里面布尔算法减去VOXEL,如下图:
注意,上面的inp可以直接调用basic,在Geometry里面就能看到image的3D效果图,如下所示。至此,DICOM的导入到体素建模就完成了。