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 相关文章推荐
pycharm下打开、执行并调试scrapy爬虫程序的方法
Nov 29 Python
Python星号*与**用法分析
Feb 02 Python
python如何将图片转换为字符图片
Aug 19 Python
python 获取list特定元素下标的实例讲解
Apr 09 Python
Python实现求解括号匹配问题的方法
Apr 17 Python
查看python下OpenCV版本的方法
Aug 03 Python
Python3中编码与解码之Unicode与bytes的讲解
Feb 28 Python
python定时复制远程文件夹中所有文件
Apr 30 Python
python实现简单学生信息管理系统
Apr 09 Python
使用Keras实现Tensor的相乘和相加代码
Jun 18 Python
python中如何写类
Jun 29 Python
Python带你从浅入深探究Tuple(基础篇)
May 15 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
探讨Smarty中如何获取数组的长度以及smarty调用php函数的详解
2013/06/20 PHP
php图片处理函数获取类型及扩展名实例
2014/11/19 PHP
PHP中strtr字符串替换用法详解
2014/11/26 PHP
php轻量级的性能分析工具xhprof的安装使用
2015/08/12 PHP
PHP静态成员变量和非静态成员变量详解
2017/02/14 PHP
Yii2汉字转拼音类的实例代码
2017/04/18 PHP
基于jquery的tab切换 js原理
2010/04/01 Javascript
使用JS或jQuery模拟鼠标点击a标签事件代码
2014/03/10 Javascript
浅析JS操作DOM的一些常用方法
2016/05/13 Javascript
JavaScript基础知识点归纳(推荐)
2016/07/09 Javascript
js实现打地鼠小游戏
2017/02/13 Javascript
Angular实现跨域(搜索框的下拉列表)
2017/02/16 Javascript
Ajax验证用户名或昵称是否已被注册
2017/04/05 Javascript
记一次vue去除#问题处理经过小结
2019/01/24 Javascript
AngularJS实现的自定义过滤器简单示例
2019/02/02 Javascript
详解小程序用户登录状态检查与更新实例
2019/05/15 Javascript
jquery实现垂直手风琴菜单
2020/03/04 jQuery
Node 模块原理与用法详解
2020/05/13 Javascript
如何利用Node.js与JSON搭建简单的动态服务器
2020/06/16 Javascript
ant design vue中表格指定格式渲染方式
2020/10/28 Javascript
解决vue-pdf查看pdf文件及打印乱码的问题
2020/11/04 Javascript
Python程序中的观察者模式结构编写示例
2016/05/27 Python
Python爬虫包BeautifulSoup实例(三)
2018/06/17 Python
Python3用tkinter和PIL实现看图工具
2018/06/21 Python
python Flask 装饰器顺序问题解决
2018/08/08 Python
Jupyter Notebook输出矢量图实例
2020/04/14 Python
细节决定成败演讲稿
2014/05/12 职场文书
2014领导班子专题民主生活会对照检查材料思想汇报
2014/09/23 职场文书
个人股份转让协议书范本
2015/01/28 职场文书
工程部文员岗位职责
2015/02/04 职场文书
幼儿园综治宣传月活动总结
2015/05/07 职场文书
致运动员加油稿
2015/07/21 职场文书
浪漫婚礼主持词开场白
2015/11/24 职场文书
《童年的发现》教学反思
2016/02/18 职场文书
MySQL命令行操作时的编码问题详解
2021/04/14 MySQL
Python Django 后台管理之后台模型属性详解
2021/04/25 Python