DICOM文件概述

碎碎念

算是从应用的角度学一点相关知识。

概要

DICOM文件是目前医学数字成像与通讯的国际标准化文件格式,可储存影像、感兴趣区域勾画、放疗计划、放疗剂量等等信息,其内容基本涵盖了医学数字图像的采集、归档、通讯、显示、查询几乎所有形式的信息交换协议。

DICOM数据本身以16进制储存,大致可划分为导语(前128字节)、前缀(识别dicm的字符,4字节)和数据,DICOM数据的基本数据单元为(TAG,VR,Value length,Value),TAG是识别数据信息的标识,相当于key,关键词;VR指的是数据的类型,Value length为记录数据的长度,Value就是真实记录的值。作为应用,只需要知道一个TAG对应一个Value就可以了。

可用的查看软件

以上软件可以读取DICOM文件,并显示为可视化的图像形式。

数据说明

读取一张ct:

import pydicom

ct_dcm = pydicom.read_file(r'D:\project\0_Competition\data\Original_data\HN-CHUM-001\CT\1-001.dcm')

可以看到结构如下:

在这里插入图片描述每个字典的key就是数据元素的描述,可以理解为读取TAG→识别描述→作为key。每个项目具体的含义可在以下网站查询:https://dicom.innolitics.com/ciods

接下来分别读取结构、计划和剂量文件:

str_dcm = pydicom.read_file(r'D:\project\0_Competition\data\Original_data\HN-CHUM-001\RS\1-1.dcm')
plan_dcm = pydicom.read_file(r'D:\project\0_Competition\data\Original_data\HN-CHUM-001\RP\1.dcm')
dose_dcm = pydicom.read_file(r'D:\project\0_Competition\data\Original_data\HN-CHUM-001\RD\1.dcm')

在这里插入图片描述打开后可以看到,不同的类型,会有相同的元素(黑色框),也会有自己专有的元素(红色框)。根据储存的内容,可以将数据大致划分为:

  • Patient:患者相关信息,包括姓名、年龄、扫描日期等等
  • 设备医院相关:Modality-模式,OperatorName-操作者等等
  • UID:DICOM中,唯一标识符,用于区别文件类型、文件实体等等信息,确保信息传输过程中的唯一性。具体可以参考:DICOM文件-UID
  • Study, Series, Reference:先设想一下,一位病人首次就诊,他扫了一套CT(CT_1),然后基于这个CT勾了一套结构(RS_1),基于这个结构做了计划(RP_1),基于这个计划计算了DOSE(RD_1)。在计划过程中,医生有自己考量和权衡,所以基于同样的勾画又做了另一套计划(RP_2)。治疗结束后,发现出现了转移灶,那就会重新扫一次CT(CT_2),再依靠CT_2重新进行一次计划设计流程。图示如下:
Patient
CT_1
RS_1
RP_1
RD_1
RP_2
RD_2
CT_2
RS_2
......

也就是说,一位病人不是只对应一个图像,一个图像可能不止对应一套计划,但是,CT、RS、RP、RD又存在依赖对应关系,因此DICOM中,利用Reference类的数据,描述当前文件依赖于哪个文件(储存依赖文件的UID和模式UID)。

另外,为了方便识别,可以将上下两个数据流,看做两个Study,DICOM中会储存当前文件所述study的名称、日期、InstanceUID等等。另外,CT图像是切片序列形式存在,也就是说一次CT成像的结果会储存为一系列的DICOM文件,显示这些文件属于一个序列,就是Series类数据。(Study和Series感觉可以理解为不同的文件夹,文件夹下储存相关信息,这一点可能在用过TPS系统后会更能理解。)
在这里插入图片描述

  • 不同Modality下的专有元素
  • 私人定义的元素:不同的机构,不同的厂家,甚至说不同的研究,都可以按照DICOM文件数据元的格式自己定义元素,这点可能暂时用不到。
  • 45
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值