python 读取DICOM头文件的实例


Posted in Python onMay 07, 2018

用dicompyler软件打开dicom图像,头文件如图所示:

python 读取DICOM头文件的实例

当然也可以直接读取:

ds = dicom.read_file('H:\Data\data\\21662\\2.16.840.1.113662.2.0.105002416.1489146183.701\CT\\CT#0#21662#E7AB693D.dcm')
print ds
>>
(0008, 0008) Image Type       CS: ['ORIGINAL', 'SECONDARY', 'AXIAL']
(0008, 0016) SOP Class UID      UI: CT Image Storage
(0008, 0018) SOP Instance UID     UI: 2.16.840.1.113662.2.0.105002416.1489146183.501.0
(0008, 0020) Study Date       DA: '20170310'
(0008, 0021) Series Date       DA: '20170310'
(0008, 0023) Content Date      DA: '20060505'
(0008, 0030) Study Time       TM: '1942'
(0008, 0031) Series Time       TM: '1942'
(0008, 0033) Content Time      TM: ''
(0008, 0050) Accession Number     SH: '63071'
(0008, 0060) Modality       CS: 'CT'
(0008, 0070) Manufacturer      LO: 'NOMOS'
(0008, 0090) Referring Physician's Name   PN: ''
(0008, 1010) Station Name      SH: ''
(0008, 1090) Manufacturer's Model Name   LO: 'CORVUS 6.4'
(0010, 0010) Patient's Name      PN: '*M32-2^CHENJUN^^^'
(0010, 0020) Patient ID       LO: '21662'
(0010, 0030) Patient's Birth Date    DA: ''
(0010, 0040) Patient's Sex      CS: ''
(0018, 0050) Slice Thickness      DS: '4.75'
(0018, 0060) KVP         DS: '0'
(0018, 1020) Software Version(s)     LO: 'CORVUS 6.4'
(0018, 5100) Patient Position     CS: 'HFS'
(0020, 000d) Study Instance UID     UI: 2.16.840.1.113662.2.0.105002416.1489146183.701
(0020, 000e) Series Instance UID     UI: 2.16.840.1.113662.2.0.105002416.1489146183.501
(0020, 0010) Study ID       SH: '63071'
(0020, 0011) Series Number      IS: '0'
(0020, 0012) Acquisition Number     IS: '0'
(0020, 0013) Instance Number      IS: '0'
(0020, 0020) Patient Orientation     CS: ['L', 'P']
(0020, 0032) Image Position (Patient)   DS: ['0.73437356948853', '0', '3.25']
(0020, 0037) Image Orientation (Patient)   DS: ['1', '0', '0', '0', '1', '0']
(0020, 0052) Frame of Reference UID    UI: 2.16.840.1.113662.2.0.105002416.1489146183.601
(0020, 0060) Laterality       CS: ''
(0020, 1040) Position Reference Indicator  LO: ''
(0020, 1041) Slice Location      DS: '3.25'
(0028, 0002) Samples per Pixel     US: 1
(0028, 0004) Photometric Interpretation   CS: 'MONOCHROME2'
(0028, 0010) Rows        US: 330
(0028, 0011) Columns        US: 339
(0028, 0030) Pixel Spacing      DS: ['0.734375', '0.734375']
(0028, 0100) Bits Allocated      US: 16
(0028, 0101) Bits Stored       US: 12
(0028, 0102) High Bit       US: 11
(0028, 0103) Pixel Representation    US: 0
(0028, 1052) Rescale Intercept     DS: '-1024'
(0028, 1053) Rescale Slope      DS: '1'
(7fe0, 0010) Pixel Data

发现一套图的第一张和最后一张的Slice Thickness往往和中间层的值是不同的。

Path = 'H:\Data\data\\21662\\2.16.840.1.113662.2.0.105002416.1489146183.701\CT\\a.dcm'
slices = dicom.read_file(path)
spacing = slices.PixelSpacing

读取头文件信息方法:

Slices.上图头文件中的name列。

这时要注意的是,name大小写不变,去掉空格,去掉符号,比如括号。

举例:

origin = slices.SoftwareVersions
print origin
>>CORVUS 6.4
spacing = slices[1].PixelSpacing
print spacing
>>['0.734375', '0.734375']

以上这篇python 读取DICOM头文件的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
举例详解Python中的split()函数的使用方法
Apr 07 Python
python图书管理系统
Apr 05 Python
Python selenium根据class定位页面元素的方法
Feb 26 Python
Python3实现的回文数判断及罗马数字转整数算法示例
Mar 27 Python
python查询文件夹下excel的sheet名代码实例
Apr 02 Python
python程序运行进程、使用时间、剩余时间显示功能的实现代码
Jul 11 Python
基于python实现的百度音乐下载器python pyqt改进版(附代码)
Aug 05 Python
Tensorflow tf.dynamic_partition矩阵拆分示例(Python3)
Feb 07 Python
基于Tensorflow:CPU性能分析
Feb 10 Python
python安装读取grib库总结(推荐)
Jun 24 Python
套娃式文件夹如何通过Python批量处理
Aug 23 Python
python函数的两种嵌套方法使用
Apr 02 Python
解决Python requests库编码 socks5代理的问题
May 07 #Python
基于python requests库中的代理实例讲解
May 07 #Python
Python操作Oracle数据库的简单方法和封装类实例
May 07 #Python
Pandas实现数据类型转换的一些小技巧汇总
May 07 #Python
Python使用cx_Oracle模块操作Oracle数据库详解
May 07 #Python
Python代码缩进和测试模块示例详解
May 07 #Python
Python采集代理ip并判断是否可用和定时更新的方法
May 07 #Python
You might like
Php Mssql操作简单封装支持存储过程
2009/12/11 PHP
生成ubuntu自动切换壁纸xml文件的php代码
2010/07/17 PHP
MySQL连接数超过限制的解决方法
2011/07/17 PHP
深入PHP数据加密详解
2013/06/18 PHP
php中Snoopy类用法实例
2015/06/19 PHP
详解PHP中的PDO类
2015/07/06 PHP
php获取图片信息的方法详解
2015/12/10 PHP
PHP中字符与字节的区别及字符串与字节转换示例
2016/10/15 PHP
Laravel重定向,a链接跳转,控制器跳转示例
2019/10/22 PHP
PHP实现获取文件mime类型多种方法解析
2020/05/28 PHP
PHP代码覆盖率统计详解
2020/07/22 PHP
JavaScript Chart 插件整理
2010/06/18 Javascript
让textarea自动调整大小的js代码
2011/04/12 Javascript
javascript电商网站抢购倒计时效果实现
2015/11/19 Javascript
js获取隐藏元素宽高的实现方法
2016/05/19 Javascript
JQuery统计input和textarea文字输入数量(代码分享)
2016/12/29 Javascript
w3c编程挑战_初级脚本算法实战篇
2017/06/23 Javascript
JavaScript创建对象的七种方式(推荐)
2017/06/26 Javascript
JavaScript 数组去重并统计重复元素出现的次数实例
2017/12/14 Javascript
初学node.js中实现删除用户路由
2019/05/27 Javascript
js获取图片的base64编码并压缩
2020/12/05 Javascript
使用beaker让Facebook的Bottle框架支持session功能
2015/04/23 Python
用Python遍历C盘dll文件的方法
2015/05/06 Python
python爬虫实战之爬取京东商城实例教程
2017/04/24 Python
Python 批量刷博客园访问量脚本过程解析
2019/08/30 Python
pycharm 使用tab跳出正在编辑的括号(){}{}等问题
2021/02/26 Python
纯css3无js实现的Android Logo(有简单动画)
2013/01/21 HTML / CSS
css3 中translate和transition的使用方法
2020/03/26 HTML / CSS
Bootstrap 学习分享
2012/11/12 HTML / CSS
使用HTML和CSS实现的标签云效果(附demo)
2021/02/03 HTML / CSS
试用期转正后的自我评价
2014/09/21 职场文书
住房公积金贷款工资证明
2015/06/12 职场文书
工资证明范本
2015/06/12 职场文书
七年级数学教学反思
2016/02/17 职场文书
《分数乘法》教学反思
2016/02/24 职场文书
SQL Server基本使用和简单的CRUD操作
2021/04/05 SQL Server