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模块学习 filecmp 文件比较
Aug 27 Python
python抓取网页内容示例分享
Feb 24 Python
Python2.x版本中cmp()方法的使用教程
May 14 Python
python逐行读写txt文件的实例讲解
Apr 03 Python
Python实现的多项式拟合功能示例【基于matplotlib】
May 15 Python
Python使用pymysql从MySQL数据库中读出数据的方法
Jul 25 Python
Python爬虫之正则表达式的使用教程详解
Oct 25 Python
python web框架 django wsgi原理解析
Aug 20 Python
python模式 工厂模式原理及实例详解
Feb 11 Python
python GUI库图形界面开发之PyQt5简单绘图板实例与代码分析
Mar 08 Python
Python Numpy之linspace用法说明
Apr 17 Python
Python中itertools库的四个函数介绍
Apr 06 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 empty() 检查一个变量是否为空
2011/11/10 PHP
PHP整数取余返回负数的相关解决方法
2014/05/15 PHP
ucenter通信原理分析
2015/01/09 PHP
PHP+Ajax实现验证码的实时验证
2016/07/20 PHP
PHP PDO数据库操作预处理与注意事项
2019/03/16 PHP
jQuery学习笔记之jQuery的DOM操作
2010/12/22 Javascript
jQuery学习笔记(1)--用jQuery实现异步通信(用json传值)具体思路
2013/04/08 Javascript
html文本框提示效果的示例代码
2014/06/28 Javascript
javascript最基本的函数汇总
2015/06/25 Javascript
Javascript连接Access数据库完整实例
2015/08/03 Javascript
基于jQuery实现仿搜狐辩论投票动画代码(附源码下载)
2016/02/18 Javascript
Bootstrap CSS组件之下拉菜单(dropdown)
2016/12/17 Javascript
JS正则子匹配实例分析
2016/12/22 Javascript
VS Code转换大小写、修改选中文字或代码颜色的方法
2017/12/15 Javascript
详解vue静态资源打包中的坑与解决方案
2018/02/05 Javascript
详解angularjs跨页面传参遇到的一些问题
2018/11/01 Javascript
vue中引入mxGraph的步骤详解
2019/05/17 Javascript
Ant design vue table 单击行选中 勾选checkbox教程
2020/10/24 Javascript
vue3.0中友好使用antdv示例详解
2021/01/05 Vue.js
用Python的线程来解决生产者消费问题的示例
2015/04/02 Python
在Python中使用SimpleParse模块进行解析的教程
2015/04/11 Python
django创建自定义模板处理器的实例详解
2017/08/14 Python
Python设计模式之享元模式原理与用法实例分析
2019/01/11 Python
python模块导入的方法
2019/10/24 Python
python 使用递归实现打印一个数字的每一位示例
2020/02/27 Python
香港永安旅游网:Wing On Travel
2017/04/10 全球购物
加拿大当代时尚服饰、配饰和鞋类专业零售商和制造商:LE CHÂTEAU
2017/10/06 全球购物
五型班组建设方案
2014/02/10 职场文书
继承公证书样本
2014/04/04 职场文书
高三上学期学习自我评价
2014/04/23 职场文书
2014中考励志标语
2014/06/05 职场文书
咖啡厅商业计划书
2014/09/15 职场文书
中考学习决心书
2015/02/04 职场文书
裁员通知
2015/04/25 职场文书
《追风筝的人》:人心中的成见是座大山,但请不忘初心
2019/11/15 职场文书
Win10此设备不支持接收Miracast无法投影的解决方法
2022/07/07 数码科技