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学习之asyncore模块用法实例教程
Sep 29 Python
Python中的字典与成员运算符初步探究
Oct 13 Python
使用rst2pdf实现将sphinx生成PDF
Jun 07 Python
详解python中字典的循环遍历的两种方式
Feb 07 Python
让python 3支持mysqldb的解决方法
Feb 14 Python
解决python ogr shp字段写入中文乱码的问题
Dec 31 Python
PyCharm-错误-找不到指定文件python.exe的解决方法
Jul 01 Python
Django 中自定义 Admin 样式与功能的实现方法
Jul 04 Python
pygame实现贪吃蛇游戏(下)
Oct 29 Python
python实现AHP算法的方法实例(层次分析法)
Sep 09 Python
Python接口自动化测试框架运行原理及流程
Nov 30 Python
python中的装饰器该如何使用
Jun 18 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
yii2.0数据库迁移教程【多个数据库同时同步数据】
2016/10/08 PHP
PHP实现负载均衡session共享redis缓存操作示例
2018/08/22 PHP
Javascript核心读书有感之词法结构
2015/02/01 Javascript
Nodejs中session的简单使用及通过session实现身份验证的方法
2016/02/04 NodeJs
AngularJS控制器之间的数据共享及通信详解
2016/08/01 Javascript
详解jQuery中基本的动画方法
2016/12/14 Javascript
js 动态生成html 触发事件传参字符转义的实例
2017/02/14 Javascript
uploader秒传图片到服务器完整代码
2017/04/22 Javascript
详解Vue中组件的缓存
2019/04/20 Javascript
JS常用排序方法实例代码解析
2020/03/03 Javascript
VueQuillEditor富文本上传图片(非base64)
2020/06/03 Javascript
js实现全选和全不选
2020/07/28 Javascript
Vue.js中使用Vuex实现组件数据共享案例
2020/07/31 Javascript
vue+elementUI(el-upload)图片压缩,默认同比例压缩操作
2020/08/10 Javascript
Python类方法__init__和__del__构造、析构过程分析
2015/03/06 Python
在Python程序中进行文件读取和写入操作的教程
2015/04/28 Python
Python中IPYTHON入门实例
2015/05/11 Python
Python fileinput模块使用实例
2015/06/03 Python
python实现获取Ip归属地等信息
2016/08/27 Python
对numpy.append()里的axis的用法详解
2018/06/28 Python
python中copy()与deepcopy()的区别小结
2018/08/03 Python
python中单例常用的几种实现方法总结
2018/10/13 Python
详解程序意外中断自动重启shell脚本(以Python为例)
2019/07/26 Python
python如何建立全零数组
2020/07/19 Python
使用Python Tkinter实现剪刀石头布小游戏功能
2020/10/23 Python
Ratchet 模态框的实现
2020/08/19 HTML / CSS
中国第一家杂志折扣订阅网:杂志铺
2016/08/30 全球购物
质检员的岗位职责
2013/11/15 职场文书
装修协议书范本
2014/04/21 职场文书
学校督导评估方案
2014/06/10 职场文书
2015年安康杯竞赛活动总结
2015/03/26 职场文书
运动会通讯稿200字
2015/07/20 职场文书
2016年中学植树节活动总结
2016/03/16 职场文书
《时代广场的蟋蟀》读后感:真挚友情,温暖世界!
2020/01/08 职场文书
mysql配置SSL证书登录的实现
2021/09/04 MySQL
Spring Boot 实现 WebSocket
2022/04/30 Java/Android