python读取dicom图像示例(SimpleITK和dicom包实现)


Posted in Python onJanuary 16, 2020

1. 用SimpleITK读取dicom序列:

import SimpleITK as sitk
import numpy as np
img_path='F:\\dataset\\pancreas\\Output\\thick\\original\\1'
mask_path='F:\\dataset\\pancreas\\Output\\thick\\groundtruth\\1'
 
reader = sitk.ImageSeriesReader()
img_names = reader.GetGDCMSeriesFileNames(img_path)
reader.SetFileNames(img_names)
image = reader.Execute()
image_array = sitk.GetArrayFromImage(image) # z, y, x
 
reader = sitk.ImageSeriesReader()
mask_names = reader.GetGDCMSeriesFileNames(mask_path)
reader.SetFileNames(mask_names)
mask = reader.Execute()
mask_array = sitk.GetArrayFromImage(mask) # z, y, x

2. 用dicom读取单张dicom图像并显示:

import dicom 
import pylab  
 
ds=dicom.read_file("F:\\dataset\\pancreas\\Output\\thick\\groundtruth\\1\\FILE0001_seg.dcm")  
pixel_bytes = ds.PixelData 
 
##CT值组成了一个矩阵 
pix = ds.pixel_array 
 
##读取显示图片 
pylab.imshow(ds.pixel_array, cmap=pylab.cm.bone) 
pylab.show() 
如果要对dicom图像中的像素值进行修改,继续执行以下代码:

##修改图片中的元素,不能直接使用data_array,需要转换成PixelData 
for n,val in enumerate(ds.pixel_array.flat): # example: zero anything < 300 
  if val < 300: 
    ds.pixel_array.flat[n]=0 
ds.PixelData = ds.pixel_array.tostring() 
ds.save_as("newfilename.dcm")

3. 此外,用pydicom也可读取dicom图像

以上这篇python读取dicom图像示例(SimpleITK和dicom包实现)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python2.x中文乱码问题解决方法
Jun 02 Python
详解Python的Flask框架中生成SECRET_KEY密钥的方法
Jun 07 Python
Flask的图形化管理界面搭建框架Flask-Admin的使用教程
Jun 13 Python
Android模拟器无法启动,报错:Cannot set up guest memory ‘android_arm’ Invalid argument的解决方法
Jul 01 Python
python下读取公私钥做加解密实例详解
Mar 29 Python
python仿evething的文件搜索器实例代码
May 13 Python
pyQT5 实现窗体之间传值的示例
Jun 20 Python
anaconda中更改python版本的方法步骤
Jul 14 Python
python实现文件批量编码转换及注意事项
Oct 14 Python
python模块常用用法实例详解
Oct 17 Python
Django框架下静态模板的继承操作示例
Nov 08 Python
如何利用Python写个坦克大战
Nov 18 Python
.dcm格式文件软件读取及python处理详解
Jan 16 #Python
用python解压分析jar包实例
Jan 16 #Python
Python3 实现爬取网站下所有URL方式
Jan 16 #Python
python3爬取torrent种子链接实例
Jan 16 #Python
Python 实现自动获取种子磁力链接方式
Jan 16 #Python
关于初始种子自动选取的区域生长实例(python+opencv)
Jan 16 #Python
Python简单实现区域生长方式
Jan 16 #Python
You might like
PHP中for循环与foreach的区别
2017/03/06 PHP
PHP基于递归实现的约瑟夫环算法示例
2017/08/27 PHP
PHP设计模式之状态模式定义与用法详解
2018/04/02 PHP
PHP添加PNG图片背景透明水印操作类定义与用法示例
2019/03/12 PHP
php的扩展写法总结
2019/05/14 PHP
js中如何把字符串转化为对象、数组示例代码
2013/07/17 Javascript
JavaScript获取页面中超链接数量的方法
2015/11/09 Javascript
基于jQuery实现文本框只能输入数字(小数、整数)
2016/01/14 Javascript
原生js实现节日时间倒计时功能
2017/01/18 Javascript
Vue文件配置全局变量的实例
2018/09/06 Javascript
js中offset,client , scroll 三大元素知识点总结
2019/09/11 Javascript
JS禁用右键、禁用Ctrl+u、禁用Ctrl+s、禁用F12的实现代码
2020/12/01 Javascript
Nodejs在局域网配置https访问的实现方法
2020/10/17 NodeJs
[05:59]2018DOTA2国际邀请赛寻真——只为胜利的Secret
2018/08/13 DOTA
wxPython窗口中文乱码解决方法
2014/10/11 Python
简单介绍Python中的JSON使用
2015/04/28 Python
基于Python Shell获取hostname和fqdn释疑
2016/01/25 Python
Python提取Linux内核源代码的目录结构实现方法
2016/06/24 Python
Python中正则表达式详解
2017/05/17 Python
python验证码识别的示例代码
2017/09/21 Python
Python底层封装实现方法详解
2020/01/22 Python
python opencv圆、椭圆与任意多边形的绘制实例详解
2020/02/06 Python
浅谈python输出列表元素的所有排列形式
2020/02/26 Python
爬虫代理的cookie如何生成运行
2020/09/22 Python
如何查看python关键字
2021/01/17 Python
大学毕业生简单自荐信
2013/11/05 职场文书
求职简历的自我评价
2014/01/31 职场文书
个人授权委托书范本
2014/04/03 职场文书
公路绿化方案
2014/05/12 职场文书
优秀应届本科生求职信
2014/07/19 职场文书
会计系毕业求职信
2014/08/07 职场文书
社区务虚会发言材料
2014/10/20 职场文书
仓库管理员岗位职责
2015/02/03 职场文书
JavaScript实现复选框全选功能
2021/04/11 Javascript
win11怎么用快捷键锁屏? windows11锁屏的几种方法
2021/11/21 数码科技
关于maven依赖 ${xxx.version}报错问题
2022/01/18 Java/Android