Dicom 基本知识-数据结构篇

阅读本文大概需要6分钟

'DICOM’数据是医疗影像的关键,一个.dcm 文件保存了单次诊断的全部信息(病人信息+图像数据),通过读取解析.dcm文件可以获取所有信息。

DICOM文件结构

打开任意一个.dcm文件,使用16进制打开,可以看到如下结构:

  • 导言

导言部分128字节,可以直接跳过。

  • 前缀

前缀标识的一个dicm文件,总共4个字节。

  • 数据元素

在前缀后面就是真正的数据元素来。

从数据元素开始,均是以key,value的形式提供,每个tag就是dicom里面定义好的字典,我们在解析时根据需要只需关注特定的tag即可,dicom全部的tag至少有 2000个。

好了,Dicom基本数据结构就这样,刚开始学习时可以自己动手解析下,体验下上面说的几个步骤。实际工作或者软件开发中都是使用第三方开源库进行操作,比如比较著名的 C++ 系的DCMTKJAVA系的 dcm4che, python系的 pyDicom等等,本文乃至以后的文章主要以 DCMTK为主.

DICOM-Tag说明

1 患者信息(整个SERIES一样)
Tag描述例子
0010 0010patient’s name(患者名字)zhangsan
0010 0020patient ID(患者ID)100034251
0010 0030patient’s birth date(患者生日)19390506
0010 0040patient’s sex(患者性别)F
0010 1010patient’s age(患者年龄)075Y
0018 0015body part examined(扫描部位)Head

2 设备医院相关信息(整个SERIES一样)
Tag描述例子
0008 0060ModalityCT
0008 0070Manufacture(生产厂家)SIMENS
0008 0080Institution name(机构名称)SH PULMONARY HOSPITAL
0008 0080Institution address(机构地址)NO.507zheng min road/shsh/71f6e4/yang puCN
0008 1010Station nameCTAWP65018
0008 1070Operator’s name5411

3 study信息(整个SERIES一样)
Tag描述例子
0008 0020Study date20141103
0008 0021Series date20141103
0008 0030Study time175733(时分秒)
0008 1030Study descriptionHead^headRoutineSeq
0008 103ESeries descriptionHeadSeq
0020 000DStudy Instance UID1.2.840.113820.862123.26.20141103173532
0020 000ESeries Instance UID1.3.12.2.1107.5.1.4.65018.30000014103107533800000272234
0020 0010Study ID

4 图像信息(除注明的,整个SERIES相同)
Tag描述例子
0008 0008Image typeORIGINAL\PRIMARY\AXIAL\CT_SOM5 SEQ
0008 0023Image data20141103(每张分开列)
0008 0033Image time175812(每张分开列)
0018 0050Slice thickness(层厚)2.4(每张分开列)
0018 0093Percent sampling100
0018 0094Percent phase field of view100
0018 5100Patient position(患者姿态)HFS
0020 0013Image number3(每张分开列)
0020 0032Image position(patient)-113.2783-291.2783\63.8(每张分开列)
0020 0037Image Orientation(patient)1\0\0\0\1\0(每张分开列)
0020 1041Slice location(图像位置)63.8(每张分开列)
0028 0002Samples per pixel1
0028 0004Photometric InterpretationMONOCHROME2
0028 0010Rows(图像列数)512
0028 0011Columns(图像行数)512
0028 0030Pixel spacing(像素间距)0.443359375\0.443359375
0028 1050Window center(窗位)35\700(每张分开列)
0028 1051Window wide(窗宽)80\3200(每张分开列)

5 CT 设备信息(整个SERIES相同)
Tag描述例子
0018 0060KVP(球管电压)120
0018 0090Data collection diameter(数据采集直径)500
0018 1000Device serial number(设备序列号)65018
0018 1030Protocol name(扫描序列名)01_ThoraxRoutine
0018 1100Reconstruction diameter(重建直径)382
0018 1110Distance source to detector(射线源与探测器间距)1085.6
0018 1120Gantry/detector tilt(机架倾斜角)0
0018 1130Table height(床高)150
0018 1140Rotation direction(旋转方向)CW
0018 1150Exposure time(曝光时间)500
0018 1151X-ray tube current(球管电流)446
0018 1152Exposure(mA*s)185
0018 1160Filter type(滤波类型)FLAT
0018 1170Generator power34
0018 1190Focal spot(焦点长度)1.2
0018 1200Date of last calibration(上次测量日期)20140517
0018 1201Time of last calibration(上次测量时间)081655
0018 1210Convolution kernel(卷积核)B50f
0018 9306Single collimation width(可重建最小厚度)0.60000
0018 9307Total collimation width(准直宽度)98.40000
0018 9309Table speed(床速度)92.00000
0018 9310Table feed per rotation(床旋进比)46.00000
0018 9311Spiral pitch factor(步进)1.200000
0018 9313Data collection center(patient)(数据采集中心)0.373047-149.626953-92.5000
0018 9318Reconstruction target center(patient)(重建目标中心)0.373047-149.626953-92.5000
0018 9323Exposure modulation type(曝光模式类型)XYZ_EC
0018 9324Estimated Dose Saving(辐射剂量)64.125000
0018 9345CTDIvol9.445693

6 MR设备相关tag(整个SERIES相同)
Tag描述例子
0018 0020Scanning sequence(序列类型)SE
0018 0021Sequence variantsp
0018 0022Scan options(扫描选项)PFP
0018 0023Mr acquisition type(采集类型)2D
0018 0024Sequence name(序列名)*se2d1
0018 0025Angio flagN
0018 0080Repetition time(重复时间)495
0018 0081Echo time(回波时间)7.8
0018 0083Number of averages(重复次数)1
0018 0084Imageing frequency(成像频率)63.666472
0018 0085Imaged Nucleus(成像核)1H
0018 0086Echo number(回波数)1
0018 0087Magnetic field strength(磁场强度)1.5
0018 0088Spacing between slices(层间距)3
0018 0089Number of Phase Encoding steps(相位编码步数)224
0018 0091Echo train length(回波链长度)1
0018 0095Pixel bandwidth(像素带宽)130
0018 1000Device series number(设备序列号)25788
0018 1030Protocol name(扫描序列名)T1_se_tra
0018 1251Transmitting coil(发射线圈)body
0018 1310Acquisition matrix(采集矩阵)0\256\256\0
0018 1312Phase encoding direction(相位编码方向)ROW
0018 1314Flip angle(翻转角)90
0018 1315Variable flip angle flagN
0018 1316SAR0.83983357382971
0018 1318db/dt0

DICOM-VR数据类型说明

VR含义允许的字符数据长度
CS - Code String
代码字符串开头结尾可以有没有意义的空格的字符串,比如“CD123_4”大写字母,0-9,空格以及下划线字符最多16 个字符
SH- Short String 短字符串短字符串最多16
LO - Long String 长字符串一个字符串,可能在开头、结尾填有空 格。比如“Introduction to DICOM”最多 64 个字符
ST - Short Text 短文本可能包含一个或多个段落的字符串最多 1024 个字符
LT - Long Text 短文本可能包含一个或多个锻炼的字符串,与LO相同,但可以更长最多 10240 个字符
UT - Unlimited Text 无限制文本包含一个或多个段落的字符串,与 LT 类似最多(2的32次方–2)个字符
AE - Application Entity应用实体标识一个设备的名称的字符串,开头和 结尾可以有无意义的字符。比如 “MyPC01”最多 16 个字符
PN - Person Name 病人姓名有插入符号()作为姓名分隔符的病人姓名。比如“SMITHJOHN” “Morrison- JonesSusan^^Ph.D, Chief Executive Officer”最多 64 个字符
UI - Unique Identifier (UID) 唯一标识符一个用作唯一标识各类项目的包含 UID 的字符串。比如“1.2.840.10008.1.1”0-9 和半角句号(.)最多64 个字符
DA - Date 日期格式为 YYYYMMDD 的字符串;YYYY 代表年;MM 代表月;DD 代表日。比 如“20050822”表示 2005 年 8 月 22 日0-98个字符
TM - Time 时间格式为 HHMMSS 的字符串。FRAC; HH 表示小时(范围“00”-“23”); MM 表示分钟(范围“00”-“59”); 而 FRAC 包含秒的小数部分,即百万分 之一秒。比如“183200.00” 表示下午 6:320-9 和半角句号(.)最多 16 个字符
DT - Date Time 日期时间格式为 YYYYMMDDHHMMSS. FFFFFF,串联的日期时间字符串。字符串的各部分从左至右是:年 YYYY;月 MM;日 DD;小时 HH;分钟 MM;秒 SS;秒的小数 FFFFFF。比如 20050812183000.00”表示 2005 年 8 月 12 日下午 18 点 30 分 00 秒0-9,加号,减号和半角句号最多 26 个字符
AS - Age String 年龄字符串符合以下格式的字符串:nnnD, nnnW, nnnM, nnnY;其中 nnn 对于 D 来说表示天数,对于W来说表示周数,对于M 来说表示月数,对于 Y 来说表示岁数。 比如“018M”表示他的年龄是 18 个月0–9, D, W,M, Y4 个字符
IS - Integer String 整型字符串表示一个整型数字的字符 串。比如“-1234567”0-9,加号(+),减号(-)最多 12 个字符
DS - Decimal String 小数字符串表示定点小数和浮点小数。 比如“12345.67”,“-5.0e3”0-9,加号(+),减号(-), 最多 16 个字符 E,e 和半角句号(.)最多 16 个字符
SS - Signed Short 有符号短型符号型二进制整数,长度 16 比特2 个字符
US - Unsigned Short 无符号短型无符号二进制整数,长度 16 比特2 个字符
SL - Signed Long 有符号长型有符号二进制整数4 个字符
UL - Unsigned Long 无符号长型无符号二进制整数,长度 32 比特4 个字符
AT - Attribute Tag 属性标签16 比特无符号整数的有序对,数据元素的标签4 个字符
FL - Floating Single 单精度浮点单精度二进制浮点数字4 个字符
FD - Floating Point Double 双精度二进制浮点数字双精度二进制浮点数字8 个字符
OB - Other Byte String 其他字节字符串
OW - Other Word String 其他单词字符串6 比特(2 字节)单词字符串
OF - Other Float String 其他浮点字符串32 比特(4 个字节)浮点单词字符串
SQ - Sequence Items 条目序列条目的序列
UN – Unknown 未知字节的字符串,其中内容的编码方式是未知的

DICOM 标准支持的数据集

Character Set DescriptionDefined Term
Latin alphabet No. 1ISO_IR 100
Latin alphabet No. 2ISO_IR 101
Latin alphabet No. 3ISO_IR 109
Latin alphabet No. 4ISO_IR 110
CyrillicISO_IR 144
ArabicISO_IR 127
GreekISO_IR 126
HebrewISO_IR 138
Latin alphabet No. 5ISO_IR 148
JapaneseISO_IR 13
ThaiISO_IR 166
Default repertoireISO 2022 IR 6
Latin alphabet No. 1ISO 2022 IR 100
Latin alphabet No. 2ISO 2022 IR 101
Latin alphabet No. 3ISO 2022 IR 109
Latin alphabet No. 4ISO 2022 IR 110
CyrillicISO 2022 IR 144
ArabicISO 2022 IR 127
GreekISO 2022 IR 126
HebrewISO 2022 IR 138
Latin alphabet No. 5ISO 2022 IR 148
JapaneseISO 2022 IR 13
ThaiISO 2022 IR 166
JapaneseISO 2022 IR 87
JapaneseISO 2022 IR 159
KoreanISO 2022 IR 149
  • 6
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值