医学图像之DICOM格式解析

医学影像学

  • 医学影像学Medical Imaging,是研究借助于某种介质(如X射线、电磁场、超声波等)与人体相互作用,把人体内部组织器官结构、密度以影像方式表现出来,供诊断医师根据影像提供的信息进行判断,从而对人体健康状况进行评价的一门科学,包括医学成像系统和医学图像处理两方面相对独立的研究方向。
  • 仪器主要包括X光成像仪器、CT(普通CT、螺旋CT)、正子扫描(PET)、超声(分B超、彩色多普勒超声、心脏彩超、三维彩超)、核磁共振成像(MRI)、心电图仪器、脑电图仪器等

DICOM简介

  • DICOM(Digital Imaging and Communications in Medicine)即医学数字成像和通信,是医学图像和相关信息的国际标准(ISO 12052)。它定义了质量能满足临床需要的可用于数据交换的医学图像格式。DICOM被广泛应用于放射医疗,心血管成像以及放射诊疗诊断设备(X射线,CT,核磁共振,超声等),并且在眼科和牙科等其它医学领域得到越来越深入广泛的应用。在数以万计的在用医学成像设备中,DICOM是部署最为广泛的医疗信息标准之一。前大约有百亿级符合DICOM标准的医学图像用于临床使用。
  • 目前采用的标准是DICOM3.0,其组成如下图:
    第一部分:概述
    第二部分:兼容性

    第四部分:

    服务类说明

    第三部分:信息对象 第十一部分:介质存储应用
    第五部分:数据结构和定义
    第六部分:数据字典
    第七部分:信息交换网络操作 第八部分:网络支持TCP/IP 第九部分:点对点通信
    第十部分:介质存储和文件格式
    其余部分:特殊媒质格式和物理介质、打印、安全机制

DICOM文件

  • DICOM文件是指按照DICOM标准而存储的医学文件,一般由一个DICOM文件头和一个DICOM数据集合组成,结构图如下图
  • DICOM文件头包含了标识数据集合的相关信息,每个DICOM文件都必须包括一个文件头:
  1. 文件导言,由128个字节组成。
  2. DICOM前缀,可根据这长为4个字节的字符串是否等于“DICM”来判断该文件是不是DICOM文件。
  3. 文件信息元素
  • DICOM文件的主要组成部分是数据集,它是由DICOM数据元素按照指定的顺序依次排列组成的。对于DICOM文件,一般采用显式传输,数据元素按照标签Tag从小到大顺序排列。最基本的单元是数据元,数据元主要由4个部分组成:
  1. 标签Tag:一个16位的无符号整数的有序对,前8位表示组号,后8位表示元素号。
  2. 值表示:指明该数据元素中的数据是哪种数据类型。
  3. 值长度:一个16位或者32位的无符号整数,表示了数据域的长度。
  4. 数据域:存在这个字段的值的数据类型由这个数据元素的值表示决定,且它的存储长度为偶数个字节。

标签Tag

每个数据元素从前到后可以简单分段:文件元tag,普通tag,像素tag。

  • 文件元tag(组号+0000):不受传输语法影响,总是以显示VR方式表示,因为它里面就定义了传输语法;文件元tag的dataElement,并没有多大的意义,它的VF数值是整个组所有dataElement的字节长度,一个dicom中可以只有一个文件元tag,也可以有多个文件元tag。
  • 普通tag:除了文件元tag和像素tag,其余的都是普tag数据。包括:图像宽,高,数据传输格式,病人姓名,病人生日,病历医院,病历科室,病情的描述等等数据。
  • 像素tag(7fe0,0010):表示dataElement存储的是病历的图像数据。比如tag(0002,0010)决定普通tag的读取方式 little字节序还是big字节序,隐式VR还是显示VR。由它的值决定。tag(7fe0,0010)像素数据开始处。其他部分重要tag如下图。 

   

     

DCM文件

  • 符合DICOM标准的文件通常后缀为.dcm。当选择一个DICOM文件进行显示时,DICOM文件的后缀名是DCM或dcm,对文件名的后缀名检查后就可以初步判定文件是否为DICOM文件,但是后缀名满足要求并不代表是标准的DICOM文件,需要打开文件,跳过128字节的文件导言,然后读取四个字节,检查这四个字节的数据是否为“DICM”。当满足要求时,可以判断该文件时一个DICOM文件。

解析DICOM文件

可以利用Sante DICOM Viewer查看DICOM数据

  • 跳过128字节的文件导言,读取“DICM“四个字节,确认是DICOM格式的文件
  • 读取重要的数据元素,如传输语法等。0010组号描述患者信息,0008组号描述特征参数。
  • 读取普通的tag,直到ttag(7fe0,0010),即像素数据开始处。像素数据的存储顺序,从左到右,从上到下。

猜你喜欢

转载自www.cnblogs.com/XDU-Lakers/p/9863114.html
今日推荐