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分割列表(list)的方法示例
May 07 Python
Python实现的手机号归属地相关信息查询功能示例
Jun 08 Python
Python随机生成手机号、数字的方法详解
Jul 21 Python
python的文件操作方法汇总
Nov 10 Python
在mac下查找python包存放路径site-packages的实现方法
Nov 06 Python
Python实现繁体中文与简体中文相互转换的方法示例
Dec 18 Python
Python图像处理之颜色的定义与使用分析
Jan 03 Python
利用python numpy+matplotlib绘制股票k线图的方法
Jun 26 Python
Python FFT合成波形的实例
Dec 04 Python
使用keras框架cnn+ctc_loss识别不定长字符图片操作
Jun 29 Python
python报错: 'list' object has no attribute 'shape'的解决
Jul 15 Python
python自动计算图像数据集的RGB均值
Jun 18 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+DBM的同学录程序(2)
2006/10/09 PHP
php递归遍历删除文件的方法
2015/04/17 PHP
详细解读PHP中接口的应用
2015/08/12 PHP
php正则表达式学习笔记
2015/11/13 PHP
基于jquery的图片的切换(以数字的形式)
2011/02/14 Javascript
firefox下jquery iframe刷新页面提示会导致重复之前动作
2012/12/17 Javascript
Javascript 判断是否存在函数的方法
2013/01/03 Javascript
js post提交调用方法
2014/02/12 Javascript
jquery实现类似淘宝星星评分功能实例
2014/09/12 Javascript
js正则表达式验证邮件地址
2015/11/12 Javascript
快速掌握WordPress中加载JavaScript脚本的方法
2015/12/17 Javascript
Bootstrap组件系列之福利篇几款好用的组件(推荐)
2016/06/23 Javascript
vue router使用query和params传参的使用和区别
2017/11/13 Javascript
原生JavaScript实现轮播图
2021/01/10 Javascript
Vue 事件的$event参数=事件的值案例
2021/01/29 Vue.js
[05:08]DOTA2-DPC中国联赛3月6日Recap集锦
2021/03/11 DOTA
详解Python中的type()方法的使用
2015/05/21 Python
python抽象基类用法实例分析
2015/06/04 Python
总结python实现父类调用两种方法的不同
2017/01/15 Python
scikit-learn线性回归,多元回归,多项式回归的实现
2019/08/29 Python
Python大数据之从网页上爬取数据的方法详解
2019/11/16 Python
8种常用的Python工具
2020/08/05 Python
利用html5 canvas破解简单验证码及getImageData接口应用
2013/01/25 HTML / CSS
html5使用canvas画一条线
2014/12/15 HTML / CSS
美国娱乐和流行文化商品店:FYE
2017/09/14 全球购物
Topshop法国官网:英国快速时尚品牌
2018/04/08 全球购物
如何通过jdbc调用存储过程
2012/04/19 面试题
JPA的优势都有哪些
2013/07/04 面试题
信息技术专业大学生职业生涯规划书
2014/01/24 职场文书
球队口号
2014/06/18 职场文书
建筑安全责任书范本
2014/07/24 职场文书
纪检干部对照检查材料
2014/08/22 职场文书
机关作风建设心得体会
2014/10/22 职场文书
学习党的群众路线教育实践活动心得体会范文
2014/11/03 职场文书
k8s部署redis cluster集群的实现
2021/06/24 Redis
MySql中的json_extract函数处理json字段详情
2022/06/05 MySQL