python实现批量nii文件转换为png图像


Posted in Python onJuly 18, 2019

之前介绍过单个nii文件转换成png图像:

这里介绍将多个nii文件(保存在一个文件夹下)转换成png图像。且图像单个文件夹的名称与nii名字相同。

import numpy as np
import os    #遍历文件夹
import nibabel as nib #nii格式一般都会用到这个包
import imageio   #转换成图像
 
def nii_to_image(niifile):
 filenames = os.listdir(filepath) #读取nii文件夹
 slice_trans = []
 
 for f in filenames:
  #开始读取nii文件
  img_path = os.path.join(filepath, f)
  img = nib.load(img_path)    #读取nii
  img_fdata = img.get_fdata()
  fname = f.replace('.nii','')   #去掉nii的后缀名
  img_f_path = os.path.join(imgfile, fname)
  #创建nii对应的图像的文件夹
  if not os.path.exists(img_f_path):
   os.mkdir(img_f_path)    #新建文件夹
 
  #开始转换为图像
  (x,y,z) = img.shape
  for i in range(z):      #z是图像的序列
   silce = img_fdata[i, :, :]   #选择哪个方向的切片都可以
   imageio.imwrite(os.path.join(img_f_path,'{}.png'.format(i)), silce)
            #保存图像
 
if __name__ == '__main__':
 filepath = 'nii的文件夹'
 imgfile = 'image的文件夹'
 nii_to_image(filepath)

代码是我自己写的,用于处理ADNI的nii格式完全有效。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python处理图片之PIL模块简单使用方法
May 11 Python
Python中的index()方法使用教程
May 18 Python
python避免死锁方法实例分析
Jun 04 Python
hmac模块生成加入了密钥的消息摘要详解
Jan 11 Python
Python实现按中文排序的方法示例
Apr 25 Python
PyTorch 1.0 正式版已经发布了
Dec 13 Python
浅谈python新式类和旧式类区别
Apr 26 Python
python中利用numpy.array()实现俩个数值列表的对应相加方法
Aug 26 Python
解决pytorch-yolov3 train 报错的问题
Feb 18 Python
python suds访问webservice服务实现
Jun 26 Python
Python Flask异步发送邮件实现方法解析
Aug 01 Python
Python 流媒体播放器的实现(基于VLC)
Apr 28 Python
django 捕获异常和日志系统过程详解
Jul 18 #Python
Django实现发送邮件功能
Jul 18 #Python
使用django的ORM框架按月统计近一年内的数据方法
Jul 18 #Python
Django框架之登录后自定义跳转页面的实现方法
Jul 18 #Python
django页面跳转问题及注意事项
Jul 18 #Python
django框架模板语言使用方法详解
Jul 18 #Python
Django中间件基础用法详解
Jul 18 #Python
You might like
PHP的foreach中使用引用时需要注意的一个问题和解决方法
2014/05/29 PHP
php获取apk包信息的方法
2014/08/15 PHP
php arsort 数组降序排序详细介绍
2016/11/17 PHP
PHP实时统计中文字数和区别
2019/02/28 PHP
原生JS实现响应式瀑布流布局
2015/04/02 Javascript
JQuery入门基础小实例(1)
2015/09/17 Javascript
jQuery实现右下角可缩放大小的层完整实例
2016/06/20 Javascript
JS传递对象数组为参数给后端,后端获取的实例代码
2016/06/28 Javascript
使用jQuery ajaxupload插件实现无刷新上传文件
2017/04/23 jQuery
详解vue.js之绑定class和style的示例代码
2017/08/24 Javascript
javascript实现文字无缝滚动效果
2017/08/26 Javascript
[js高手之路]从原型链开始图解继承到组合继承的产生详解
2017/08/28 Javascript
echarts学习笔记之图表自适应问题详解
2017/11/22 Javascript
详解利用nodejs对本地json文件进行增删改查
2019/09/20 NodeJs
超简单的微信小程序轮播图
2019/11/22 Javascript
jquery+ajax实现异步上传文件显示进度条
2020/08/17 jQuery
JS实现拖拽元素时与另一元素碰撞检测
2020/08/27 Javascript
element-ui tree结构实现增删改自定义功能代码
2020/08/31 Javascript
vue中利用three.js实现全景图的完整示例
2020/12/07 Vue.js
部署Python的框架下的web app的详细教程
2015/04/30 Python
Python 类的继承实例详解
2017/03/25 Python
利用Python yagmail三行代码实现发送邮件
2018/05/11 Python
解决matplotlib库show()方法不显示图片的问题
2018/05/24 Python
Python爬虫框架scrapy实现的文件下载功能示例
2018/08/04 Python
python实现石头剪刀布程序
2021/01/20 Python
Python使用while循环花式打印乘法表
2019/01/28 Python
python控制台实现tab补全和清屏的例子
2019/08/20 Python
django-crontab 定时执行任务方法的实现
2019/09/06 Python
使paramiko库执行命令时在给定的时间强制退出功能的实现
2021/03/03 Python
HTML5公共页面提取作为公用代码的方法
2020/06/30 HTML / CSS
文员个人求职自荐信
2013/09/21 职场文书
地理科学专业毕业生求职信
2013/10/15 职场文书
毕业生就业自荐书
2013/12/15 职场文书
数学检讨书1000字
2014/02/24 职场文书
3分钟演讲稿
2014/04/30 职场文书
2016年“节能宣传周”活动总结
2016/04/05 职场文书