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 相关文章推荐
Django Admin 实现外键过滤的方法
Sep 29 Python
Python爬虫实现爬取京东手机页面的图片(实例代码)
Nov 30 Python
分数霸榜! python助你微信跳一跳拿高分
Jan 08 Python
Python编程argparse入门浅析
Feb 07 Python
Numpy数据类型转换astype,dtype的方法
Jun 09 Python
python实现自动网页截图并裁剪图片
Jul 30 Python
python 2.7.13 安装配置方法图文教程
Sep 18 Python
Python File(文件) 方法整理
Feb 18 Python
python求平均数、方差、中位数的例子
Aug 22 Python
pyhton中__pycache__文件夹的产生与作用详解
Nov 24 Python
如何使用Pytorch搭建模型
Oct 26 Python
手把手教你配置JupyterLab 环境的实现
Feb 02 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代码(星期六,星期日总和)
2009/11/12 PHP
PHP is_dir() 判断给定文件名是否是一个目录
2010/05/10 PHP
PHP实现对站点内容外部链接的过滤方法
2014/09/10 PHP
php中 $$str 中 &quot;$$&quot; 的详解
2015/07/06 PHP
Javascript对象中关于setTimeout和setInterval的this介绍
2012/07/21 Javascript
js 为label标签和div标签赋值的方法
2013/08/08 Javascript
jquery实现鼠标拖动图片效果示例代码
2014/01/09 Javascript
js类型转换与引用类型详解(Boolean_Number_String)
2014/03/07 Javascript
js数组如何添加json数据及js数组与json的区别
2015/10/27 Javascript
如何利用AngularJS打造一款简单Web应用
2015/12/05 Javascript
使用JS实现图片展示瀑布流效果(简单实例)
2016/09/06 Javascript
javascript数组常用方法汇总
2016/09/10 Javascript
对javascript继承的理解
2016/10/11 Javascript
js实现刷新页面后回到记录时滚动条的位置【两种方案可选】
2016/12/12 Javascript
vue-router的HTML5 History 模式设置
2018/09/08 Javascript
layui 上传插件 带预览 非自动上传功能的实例(非常实用)
2019/09/23 Javascript
antd table按表格里的日期去排序操作
2020/11/17 Javascript
Python写的PHPMyAdmin暴力破解工具代码
2014/08/06 Python
python使用socket连接远程服务器的方法
2015/04/29 Python
python Selenium爬取内容并存储至MySQL数据库的实现代码
2017/03/16 Python
Tensorflow 利用tf.contrib.learn建立输入函数的方法
2018/02/08 Python
详解python--模拟轮盘抽奖游戏
2019/04/12 Python
细数nn.BCELoss与nn.CrossEntropyLoss的区别
2020/02/29 Python
Python IDE环境之 新版Pycharm安装详细教程
2020/03/05 Python
经验丰富程序员才知道的8种高级Python技巧
2020/07/27 Python
Luxplus瑞典:香水和美容护理折扣
2018/01/28 全球购物
中西医结合临床医学专业大学生自荐信
2013/09/28 职场文书
家长通知书家长评语
2014/04/17 职场文书
2014年图书馆工作总结
2014/11/25 职场文书
2015年计划生育责任书
2015/05/08 职场文书
2016年企业先进员工事迹材料
2016/02/25 职场文书
2019学生会干事辞职信
2019/06/27 职场文书
如何给HttpServletRequest增加消息头
2021/06/30 Java/Android
Python实现批量自动整理文件
2022/03/16 Python
Win11显卡控制面板打开显卡设置方法
2022/04/20 数码科技
解决Vmware虚拟机安装centos8报错“Section %Packages Does Not End With %End. Pane Is Dead”
2022/06/01 Servers