图3.2 DICOM信息模型的结构
3.2.2 DICOM文件编码方式
一、DICOM文件结构:
DICOM协议允许将数据的传输结果存成DICOM文件的形式,典型的DICOM
文件结构如图3.3所示。
DICOM文件由以下部分组成:
1)导言(Preamble)。共128个字节,可将文件的有关说明放在导言中。
2)前缀( Prefix)。4个字节,规定为“D”、“I”、“C”、“M”共4个字符
3)数据元素(Data Element)。一般会有多组数据元素,每个数据元素对应一个IOD的属性。每个数据元素有4个域,分别是标签(Tag)、值表示VR( Value Representation)、值长度(Value Length)和值域(Value Field),其中值表示是
可选的。如图4.3所示。
图3.3 DICOM文件格式
二、DICOM数据编码规则:
1.数据元素的结构
信息对象IOD是DICOM对信息组织的逻辑模型,而在实际数据存储和传输时,
DICOM通过将IOD的每个属性编码为一个固定格式的数据元素(Data Element),
以达到交换DICOM信息的目的。每个数据元素具有以下的统一格式和内容:
①标识符(Tag)。它是占4个字节的无符号整数。前两个字节是组号,后两个字节是元素号,十751进制下格式是(gggg,eeee)。其中组号表明这个数据元素属于哪个数据组,如DICOM命令的组号是0000:而元素号用于区分同一组中的不
同数据元素;组号和元素号组成的标识符唯一表示一个特定的数据元素,数据字典就是依据标识符来检索不同数据的。每个组的第一个数据元素可选择使用(gggg,0000)来计算本组的总长度,从而在数据编码和分析过程中可以确定整个组的位置,提高解析效率。
②数据类型VR(Value Representation)。它占用2个字节,规定了数据元素的数据类型和格式。VR根据不同的传输语法(Transfer Syntax)可以省略,即如果传输过程中使用了隐式( Implicit)的传输语法,VR将被省略;而对于显示(Explicit)传输语法则数据元素中必须有VR,用以显式说明数据的类型。DICOM标准共定义了26种内部数据类型,它们各自在数据库中所对应的存储数据类型各不相同。
③数据长度(Value Length)。占2个字节或4个字节(根据VR的种类,以及VR是显示还是隐式),是无符号整数,它指定Value Field的长度。DICOM规定数据长度必须是偶数,不足时要用“补丁字符”补齐。当值长度为OxFFFFFFFF是表示未确定长度( Undefined Length),这可适应于某些特殊的数据元素,如VR为序列类型的SQ的情形。
④数据域(Value Field)。该数据元素所代表的信息对象属性的实际值。必须包含偶数个字节,存放真正的数据。数据可以有多个值,但总长度必须是偶数,
否则要补齐。在数据字典中对每个标签所代表的属性都有一个VM(Value Multiplicity),该VM表示应该由多少个VR所表示的数据类型的值来表示该标签代表的属性。DICOM通信过程中,传输语法决定不同的数据形式,而传输语法由双方在通信协商阶段确定。图3.4、图3.5、图3.6分别列出三种不同传输语法作用下的数据元素的格式(单位:字节)。
图3.4显式传输语法下VR类型为OB,OW,SQ或UN的数据元素结构
图3.5显式传输语法下VR类型不是OB,OW,SQ或UN的数据元素结构
图3.6隐式传输语法下的数据元素结构
⑤网络字节顺序(高价先存与低价先存)。不同的计算机存放多字节值的顺序不同,有些情况下在起始地址存放低位字节,另外一些情况下则存放高位字节, HTML5技术实现的医用Dicom影像浏览器的研究与实现(7):http://www.751com.cn/jisuanji/lunwen_4617.html