什么是DICOM?医学影像的文件格式

DICOM是存储和交换医学影像的国际标准。如果您拿到了存有CT、MRI或X线影像的光盘,或者收到了这类影像的下载链接,其中的文件很可能就是DICOM文件。

FDG-PET-CT-Lesions (Gatidis, Kuestner), TCIA, CC BY 4.0

本页目录
  1. 关于DICOM标准
  2. DICOM的历史
  3. DICOM文件的内部结构
  4. 一次检查是如何组织的
  5. 压缩与传输语法
  6. DICOM图像是如何传输的
  7. 模态及其代码
  8. 如何打开DICOM文件
  9. 把DICOM转换为JPEG、PNG或视频
  10. 个人信息与去标识化
  11. 常见问题
  12. 资料来源

放射学和心脏病学领域几乎所有的影像设备都使用DICOM。影像从扫描设备传到医院的存档系统、传到其他医疗机构,或刻录到患者的光盘上时,用的也是这种格式。本页介绍DICOM文件的内部结构,以及如何安全地打开、转换和分享这些文件。

关于DICOM标准

DICOM是Digital Imaging and Communications in Medicine(医学数字成像和通信)的缩写。它规定了医学影像的文件格式和网络协议,使不同厂商的设备和软件能够协同工作。

DICOM由美国放射学会(American College of Radiology,ACR)和美国国家电气制造商协会(National Electrical Manufacturers Association,NEMA)创建。如今它由DICOM标准委员会(DICOM Standards Committee)负责制定,NEMA担任秘书处。DICOM同时也是国际标准ISO 12052。

该标准约有20个部分,编号为PS3.1至PS3.22,每年更新数次。现行版本可在dicomstandard.org免费阅读。

DICOM的历史

1983年,ACR和NEMA成立了联合委员会,原因是当时扫描设备生成的图像离开厂商自己的设备就很难读取。

  • 1985年:ACR-NEMA 300,用于通过专用的16位并行接口进行点对点传输。
  • 1988年:ACR-NEMA 2.0,第二版。
  • 1993年:DICOM 3.0,启用新名称,并支持计算机网络(TCP/IP)。
  • 1995年:支持用CD交换检查,并增加了超声、X线血管造影和核医学的对象。

自1993年以来没有发布新的主版本,新功能通过增补(Supplement)陆续加入,例如模态工作列表(modality worklist,1996年)、结构化报告(2000年)、乳腺断层合成(2008年)、全切片成像(whole slide imaging,2010年)和DICOMweb(2013年)。

DICOM文件的内部结构

一个DICOM文件既包含图像,也包含有关患者、检查和设备的信息。其结构由PS3.10规定:

  1. 前导区:128字节,通常全为零。
  2. 前缀:四个字母DICM,用来标识这是DICOM文件。
  3. 文件元信息(File Meta Information):组号为0002,其中包括传输语法UID(Transfer Syntax UID)(0002,0010),它说明文件其余部分是如何编码的。
  4. 数据集:一系列数据元素。
  5. 像素数据(Pixel Data)(7FE0,0010):图像本身,通常是最后一个、也是最大的元素。
DICOM文件的内部结构
  1. 0x0000
    前导区128字节,通常全为零
  2. 0x0080
    DICM 前缀字母DICM表明这是DICOM文件
  3. (0002,xxxx)
    文件元信息说明文件其余部分的编码方式(传输语法)
  4. (gggg,eeee)
    数据集有关患者、检查、序列和图像的数据元素

    一个数据元素 PatientName

    标签
    (0010,0010)10 00 10 00
    值表示(VR)
    PN50 4E
    长度
    808 00
    值
    DOE^JANE44 4F 45 5E 4A 41 4E 45
  5. (7FE0,0010)
    像素数据图像本身,未压缩或已压缩

每个数据元素都有一个标签(tag,即十六进制的组号和元素号,例如(0010,0010))、一个值表示(value representation,简称VR,是由两个字母表示的数据类型,如表示姓名的PN或表示日期的DA)、一个长度和一个值。组号为奇数的标签是私有标签,通常由厂商定义。

标签名称
(0010,0010)Patient's Name(患者姓名)
(0010,0020)Patient ID(患者编号)
(0010,0030)Patient's Birth Date(患者出生日期)
(0008,0020)Study Date(检查日期)
(0008,0060)Modality(模态)
(0008,1030)Study Description(检查描述)
(0008,103E)Series Description(序列描述)
(0020,000D)、(0020,000E)、(0008,0018)Study、Series和SOP Instance UID(检查、序列和SOP实例的UID)
(0028,0010)、(0028,0011)Rows和Columns(行数和列数,即图像的像素尺寸)
(0028,0030)Pixel Spacing(像素间距,即相邻像素中心之间的毫米数)
(0018,0050)Slice Thickness(层厚)
(7FE0,0010)Pixel Data(像素数据)

一次检查是如何组织的

DICOM将图像组织为四个层级:

  • 患者(Patient):接受检查的人。
  • 检查(Study):一次检查,例如某个日期做的胸部CT。
  • 序列(Series):一起采集或重建出来的图像,例如薄层图像或骨算法重建图像。
  • 实例(Instance):一个对象,通常是一幅图像,存为一个文件。
从患者到图像
  • 患者 PatientID

    受检者本人:姓名、编号、出生日期

    • 检查 StudyInstanceUID

      一次检查,例如某一天做的胸部CT

      • 序列 SeriesInstanceUID

        一次扫描或一次重建得到的一组图像

        • 实例 SOPInstanceUID

          一幅图像或一个对象,存为一个文件

每幅图像通常是一个单独的文件,一次检查可以有几个序列,每个序列有数百层图像,因此一次检查可能包含数千个文件。

每个检查、序列和实例都有一个唯一标识符(UID):由圆点分隔的数字,长度不超过64个字符,例如2.25.329800735698586629295641978511506172918。UID的设计目标是在全球范围内唯一,软件依靠UID而不是文件名来为图像分组和排序。

每个对象都属于某个SOP类(SOP Class),SOP类决定了对象的类型,例如CT Image Storage(CT图像存储,1.2.840.10008.5.1.4.1.1.2)。多帧对象(multi-frame)可以在一个文件中保存许多帧,例如一段超声视频。DICOM还可以存储其他类型的对象:结构化报告(SR)、封装的PDF文档、呈现状态(presentation state)、分割(SEG)和放射治疗计划。

压缩与传输语法

传输语法(transfer syntax)规定了字节顺序、文件中是否写入VR,以及像素数据是否压缩。如果查看器不支持某种传输语法,就可能无法打开本来有效的文件。

传输语法UID压缩方式
Implicit VR Little Endian(默认)1.2.840.10008.1.2无
Explicit VR Little Endian1.2.840.10008.1.2.1无
Deflated Explicit VR Little Endian1.2.840.10008.1.2.1.99无损,压缩整个数据集
JPEG Baseline1.2.840.10008.1.2.4.50有损
JPEG Lossless1.2.840.10008.1.2.4.70无损
JPEG-LS1.2.840.10008.1.2.4.80、1.2.840.10008.1.2.4.81无损或近无损
JPEG 20001.2.840.10008.1.2.4.90、1.2.840.10008.1.2.4.91无损或有损
HTJ2K(2023年新增)1.2.840.10008.1.2.4.201至1.2.840.10008.1.2.4.203无损或有损
RLE Lossless1.2.840.10008.1.2.5无损
MPEG-2、H.264、H.2651.2.840.10008.1.2.4.100等有损视频

无损压缩精确保留每一个像素,通常能使文件缩小到原来的二分之一至三分之一。有损压缩可使文件缩小到原来的十分之一甚至更小,但会永久丢失细节。有损压缩常用于超声和视频,而CT、MRI和X线图像通常以未压缩或无损压缩的方式保存,因为丢失的细节可能影响诊断。如果Lossy Image Compression (0028,2110)(有损图像压缩)的值为01,说明该图像经过了有损压缩。

DICOM图像是如何传输的

在医院里,扫描设备把图像发送到PACS(Picture Archiving and Communication System,影像归档与通信系统),由PACS保存图像并分发到放射科医生的工作站。每个DICOM设备或程序都是一个应用实体(Application Entity,AE),具有AE标题、IP地址和端口,端口通常为104或11112。经典的DIMSE服务基于TCP/IP运行:

  • C-ECHO:检查连接是否正常。
  • C-STORE:发送对象。
  • C-FIND:查找检查、序列或图像。
  • C-MOVE:请求服务器把对象发送到指定目的地。
  • C-GET:通过同一连接获取对象。

借助模态工作列表(modality worklist),扫描设备可以收到已预约患者的清单,因此姓名和编号不必手工输入。DICOMweb(PS3.18)通过HTTP提供类似的服务:QIDO-RS用于查询,WADO-RS用于获取,STOW-RS用于存储。

患者通常会拿到CD、DVD、U盘或下载链接。按DICOM标准制作的光盘带有DICOMDIR索引文件,往往还附带一个查看器。

模态及其代码

模态代码保存在标签(0008,0060)中。

代码含义文章
CT计算机断层扫描CT检查
MR磁共振磁共振成像(MRI)
CR、DX计算机X线摄影、数字X线摄影X线摄影
US超声超声检查
MG乳腺X线摄影乳腺X线摄影
PT正电子发射断层成像PET与PET/CT
NM核医学核医学显像与SPECT
XA、RFX线血管造影、X线透视血管造影与透视
IO、PX口内X线摄影、全景X线摄影口腔X线片与锥形束CT
BMD骨密度测定骨密度检查

PET/CT检查同时包含PT和CT序列,口腔锥形束CT(CBCT)通常使用代码CT。其他代码还有OP和OPT(眼部成像)、SM(玻片显微成像)、ES(内镜)、ECG、SR、SEG,以及RTSTRUCT、RTPLAN、RTDOSE(放射治疗)。

如何打开DICOM文件

普通的看图软件打不开DICOM文件,需要使用DICOM查看器,例如:

  • Weasis:免费开源,支持Windows、macOS和Linux。
  • 3D Slicer:免费开源,具有高级三维工具,支持Windows、macOS和Linux。
  • Horos:免费开源,适用于macOS。
  • OHIF Viewer:免费开源,可在网页浏览器中运行。
  • MicroDicom:非商业用途免费,适用于Windows。
  • RadiAnt DICOM Viewer:商业软件,提供免费试用,适用于Windows。

软件的许可条款可能会变化,此列表不构成推荐。

要查看光盘,请先把光盘中的全部内容复制到电脑上,然后在查看器中打开DICOMDIR文件或复制出来的文件夹。光盘上自带的查看器并非必需,而且往往只能在Windows上运行。如果电脑没有光驱,可以向医疗机构索取下载链接。

把DICOM转换为JPEG、PNG或视频

查看器可以把图像导出为JPEG或PNG,把序列导出为视频,但得到的已不再是完整的医学影像:

  • 元数据会丢失:患者、检查和设备的数据,以及图像的顺序。
  • 灰度级别会减少。CT和MR图像通常每个像素有12至16位(数千级灰度),而常见的JPEG只有8位(256级灰度)。
  • 窗宽和窗位被固定。医生无法再针对骨骼、肺或软组织调整显示的数值范围。
  • 测量变得不可靠,也无法再进行三维重建。

如需寻求第二诊疗意见,请发送整个检查的原始DICOM文件,而不是截图或视频。

个人信息与去标识化

DICOM文件头通常包含个人信息:患者姓名、编号、出生日期和性别、检查日期,以及医院名称和医生姓名。文字还可能直接烧录在像素里(例如超声图像上),私有标签中也可能保存着能识别身份的数据。

去标识化会删除或替换这些信息。标准在PS3.15附录E(Attribute Confidentiality Profiles,属性保密配置文件)中对此作了说明。在公开分享图像或将其用于教学之前:

  • 使用能同时删除私有标签的去标识化工具;
  • 检查像素中是否有姓名和日期,并将其裁掉或遮盖;
  • 请记住,头部CT或MRI的三维重建图像可能显示出面部;
  • 为您的医生保留原始文件。

常见问题

为什么我的检查有这么多文件?

每幅图像通常是一个单独的文件,一次检查可能有数百甚至数千幅图像(参见一次检查是如何组织的)。这是正常现象。

什么是DICOMDIR?

DICOMDIR是光盘上的索引文件,列出了所有患者、检查、序列和图像,以及每个文件所在的位置。在查看器中打开它,即可加载整张光盘。

能在手机上打开DICOM文件吗?

可以,使用DICOM查看器应用或网页查看器即可。用于诊断时,医生使用的是更大、经过校准的显示器。

能把DICOM转换成JPG或PDF吗?

可以,但导出的图像会丢失信息,所以请保留原始文件(参见转换DICOM)。

DICOM可以免费使用吗?

标准本身可以免费阅读,许多免费的开源程序也支持它。NEMA不对产品进行认证,由厂商自行发布DICOM一致性声明(DICOM Conformance Statements)。

DICOM文件必须带.dcm扩展名吗?

不必。光盘上的文件常常使用IM000001这样的短名称,没有扩展名。程序是通过DICM前缀而不是文件名来识别DICOM文件的。

资料来源

更新于

以DICOM格式存储的影像检查

十种常见的医学影像检查:各自如何进行、能显示什么,以及它们的DICOM文件包含哪些内容。