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中的anydbm模版和shelve模版使用指南
Jul 09 Python
python实现实时监控文件的方法
Aug 26 Python
Python处理CSV与List的转换方法
Apr 19 Python
Tensorflow中使用tfrecord方式读取数据的方法
Jun 19 Python
Python 自动登录淘宝并保存登录信息的方法
Sep 04 Python
python 实现一个反向单位矩阵示例
Nov 29 Python
pytorch 求网络模型参数实例
Dec 30 Python
Python使用Tkinter实现滚动抽奖器效果
Jan 06 Python
Python图像处理库PIL的ImageFilter模块使用介绍
Feb 26 Python
python基础之匿名函数详解
Apr 21 Python
python数据库批量插入数据的实现(executemany的使用)
Apr 30 Python
浅谈Python实现opencv之图片色素的数值运算和逻辑运算
Jun 23 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
是否存在第一台收音机的说法
2021/03/01 无线电
php实现mysql数据库备份类
2008/03/20 PHP
不要轻信 PHP_SELF的安全问题
2009/09/05 PHP
php实现cookie加密的方法
2015/03/10 PHP
php模拟post上传图片实现代码
2016/06/24 PHP
laravel 解决后端无法获取到前端Post过来的值问题
2019/10/22 PHP
JS动态添加Table的TR,TD实现方法
2015/01/28 Javascript
jQuery+HTML5实现手机摇一摇换衣特效
2015/06/05 Javascript
基于javascript实现浏览器滚动条快到底部时自动加载数据
2015/11/30 Javascript
深入理解js promise chain
2016/05/05 Javascript
基于JavaScript定位当前的地理位置
2017/04/11 Javascript
vue中rem的配置的方法示例
2018/08/30 Javascript
Vue.js结合bootstrap前端实现分页和排序效果
2018/12/29 Javascript
JS将时间秒转换成天小时分钟秒的字符串
2019/07/10 Javascript
解决vue elementUI中table里数字、字母、中文混合排序问题
2020/01/07 Javascript
WebPack工具运行原理及入门教程
2020/12/02 Javascript
python教程之用py2exe将PY文件转成EXE文件
2014/06/12 Python
python实现封装得到virustotal扫描结果
2014/10/05 Python
python使用arcpy.mapping模块批量出图
2017/03/06 Python
python实现kmp算法的实例代码
2019/04/03 Python
django 单表操作实例详解
2019/07/30 Python
使用scrapy ImagesPipeline爬取图片资源的示例代码
2020/09/28 Python
汽车销售顾问求职自荐信
2014/01/01 职场文书
预备党员转正思想汇报
2014/01/12 职场文书
竞争性谈判邀请书
2014/02/06 职场文书
管理学院毕业生自荐信范文
2014/03/10 职场文书
承诺书怎么写
2014/03/26 职场文书
努力学习演讲稿
2014/05/10 职场文书
法语专业求职信
2014/07/20 职场文书
2014党员自我评议表范文
2014/09/20 职场文书
模范班主任事迹材料
2014/12/17 职场文书
主持稿开场白
2015/06/01 职场文书
安全教育第一课观后感
2015/06/17 职场文书
关于践行三严三实的心得体会
2016/01/05 职场文书
2016年119消防宣传日活动总结
2016/04/05 职场文书
各国货币符号大全
2022/02/17 杂记