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使用urllib模块和pyquery实现阿里巴巴排名查询
Jan 16 Python
Python标准库之随机数 (math包、random包)介绍
Nov 25 Python
详解Python中with语句的用法
Apr 15 Python
Python随机生成数据后插入到PostgreSQL
Jul 28 Python
使用paramiko远程执行命令、下发文件的实例
Oct 01 Python
深入理解Python单元测试unittest的使用示例
Nov 18 Python
python斐波那契数列的计算方法
Sep 27 Python
使用tensorflow实现VGG网络,训练mnist数据集方式
May 26 Python
使用Dajngo 通过代码添加xadmin用户和权限(组)
Jul 03 Python
python实现自动清理重复文件
Aug 24 Python
python实现猜拳游戏项目
Nov 30 Python
python使用scapy模块实现ping扫描的过程详解
Jan 21 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中的一些数组排序方法分享
2012/07/20 PHP
PHP判断网络文件是否存在的方法
2015/03/12 PHP
超详细的php用户注册页面填写信息完整实例(附源码)
2015/11/17 PHP
Yii框架上传图片用法总结
2016/03/28 PHP
PHP数组函数知识汇总
2016/05/12 PHP
php 使用redis锁限制并发访问类示例
2016/11/02 PHP
菜单效果
2006/10/14 Javascript
javascript框架设计之类工厂
2015/06/23 Javascript
获取IE浏览器Cookie信息的方法
2017/01/23 Javascript
Bootstrap3 多个模态对话框无法显示的解决方案
2017/02/23 Javascript
浅谈在vue项目中如何定义全局变量和全局函数
2017/10/24 Javascript
详解VUE 数组更新
2017/12/16 Javascript
微信小程序实现Session功能及无法获取session问题的解决方法
2019/05/07 Javascript
Vue动态生成表格的行和列
2019/07/18 Javascript
Vue点击切换Class变化,实现Active当前样式操作
2020/07/17 Javascript
用Python制作检测Linux运行信息的工具的教程
2015/04/01 Python
python实现在每个独立进程中运行一个函数的方法
2015/04/23 Python
Python创建二维数组实例(关于list的一个小坑)
2017/11/07 Python
Python 实现字符串中指定位置插入一个字符
2018/05/02 Python
windows下添加Python环境变量的方法汇总
2018/05/14 Python
Python判断字符串是否为字母或者数字(浮点数)的多种方法
2018/08/03 Python
pandas通过索引进行排序的示例
2018/11/16 Python
在django中图片上传的格式校验及大小方法
2019/07/28 Python
django创建简单的页面响应实例教程
2019/09/06 Python
CSS3模块的目前的状况分析
2010/02/24 HTML / CSS
英国泰坦旅游网站:全球陪同游览,邮轮和铁路旅行
2016/11/29 全球购物
为女性购买传统的印度服装和婚纱:Kalkifashion
2019/07/22 全球购物
Moda Italia荷兰:意大利男士服装
2019/08/31 全球购物
医生自荐信
2013/10/11 职场文书
工程地质勘察专业大学生求职信
2013/10/13 职场文书
小学六年级学生评语
2014/04/22 职场文书
单位委托书怎么写
2014/08/02 职场文书
2014乡镇机关党员个人对照检查材料思想汇报
2014/10/09 职场文书
怎样写离婚协议书
2015/01/26 职场文书
Oracle设置DB、监听和EM开机启动的方法
2021/04/25 Oracle
vue项目支付功能代码详解
2022/02/18 Vue.js