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实现模拟按键,自动翻页看u17漫画
Mar 17 Python
python装饰器-限制函数调用次数的方法(10s调用一次)
Apr 21 Python
详解python多线程、锁、event事件机制的简单使用
Apr 27 Python
Flask框架Flask-Principal基本用法实例分析
Jul 23 Python
在Python中输入一个以空格为间隔的数组方法
Nov 13 Python
CentOS下Python3的安装及创建虚拟环境的方法
Nov 28 Python
Python中的类与类型示例详解
Jul 10 Python
python实现的多任务版udp聊天器功能案例
Nov 13 Python
Python FtpLib模块应用操作详解
Dec 12 Python
Python使用jupyter notebook查看ipynb文件过程解析
Jun 02 Python
python爬虫容易学吗
Jun 02 Python
Pandas数据类型之category的用法
Jun 28 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
使用GROUP BY的时候如何统计记录条数 COUNT(*) DISTINCT
2011/04/23 PHP
php结合curl实现多线程抓取
2015/07/09 PHP
PHP设计模式之原型模式定义与用法详解
2018/04/03 PHP
用javascript动态调整iframe高度的代码
2007/04/10 Javascript
img的onload的另类用法
2008/01/10 Javascript
JS实现黑色风格的网页TAB选项卡效果代码
2015/10/09 Javascript
jQuery+Ajax+PHP弹出层异步登录效果(附源码下载)
2016/05/27 Javascript
JavaScript实现页面无操作倒计时退出
2016/10/22 Javascript
angular-ui-sortable实现可拖拽排序列表
2016/12/28 Javascript
node.JS md5加密中文与php结果不一致的解决方法
2017/05/05 Javascript
jQuery EasyUI的TreeGrid查询功能实现方法
2017/08/08 jQuery
vue mixins组件复用的几种方式(小结)
2017/09/06 Javascript
基于nodejs实现微信支付功能
2017/12/20 NodeJs
jQuery的Ajax接收java返回数据方法
2018/08/11 jQuery
JS求1到任意数之间的所有质数的方法详解
2019/05/20 Javascript
Element 默认勾选表格 toggleRowSelection的实现
2019/09/04 Javascript
[38:27]完美世界DOTA2联赛PWL S2 Forest vs FTD.C 第二场 11.26
2020/11/30 DOTA
python 中文字符串的处理实现代码
2009/10/25 Python
简单的Apache+FastCGI+Django配置指南
2015/07/22 Python
Python绘制KS曲线的实现方法
2018/08/13 Python
Python面向对象之反射/自省机制实例分析
2018/08/24 Python
python检测服务器端口代码实例
2019/08/31 Python
pygame实现非图片按钮效果
2019/10/29 Python
python批量处理多DNS多域名的nslookup解析实现
2020/06/28 Python
施华洛世奇德国官网:SWAROVSKI德国
2017/02/01 全球购物
苹果Mac升级:MacSales.com
2017/11/20 全球购物
药学专业学生的自我评价分享
2014/02/06 职场文书
教师师德考核自我评价
2014/09/13 职场文书
2014年学校国庆主题活动方案
2014/09/16 职场文书
办公用房租赁协议书
2014/11/29 职场文书
人与自然的观后感
2015/06/18 职场文书
新课程改革心得体会
2016/01/22 职场文书
python 爬取豆瓣网页的示例
2021/04/13 Python
为Centos安装指定版本的Docker
2022/04/01 Servers
唤醒紫霞仙子,携手再游三界!大话手游X《大话西游》电影合作专属剧情任务
2022/04/03 其他游戏
在容器中使用nginx搭建上传下载服务器
2022/05/11 Servers