1. 为啥要转
其实在数据传输的时候我感觉nifty文件更方便紧凑,但是有些软件只识别dicom文件,还是转吧。其实dicom文件转成nifty文件的时候丢失了一些头文件,现在需要的是把头文件加回去

2. 怎么转
发现这个方法有个问题,转过去的图是一张一张二维的,而不是三维的,我想要生成的是512*512*512的图。

import os
import SimpleITK as sitkdicom_path = r"E:\TMP\ONFH\VisualizeFemurHD\J607001977 XiaShaoHai pre-op CT\DICOM\20181224\09590000"
dicom_path2 = r"E:\TMP\ONFH\FromDocYuDeGang\unzip_all\ce\dicom_2030992.zip\CT.1.2.840.113619.2.55.1.1762929060.1878.1375835322.892.1.dcm"
nii_path = r"E:\TMP\ONFH\nnUNet\OnlyFemur\image\femur_098_0000.nii.gz"
dicom_out_path = r"E:\TMP\ONFH\VisualizeFemurHD\dicom_from_nnUNet_nifty"image2 = sitk.ReadImage(nii_path)# 读取要转换格式的图像
image2_data = sitk.GetArrayFromImage(image2)
image2_shape = image2_data.shapedicom_files = os.listdir(dicom_path)for i in range(image2_shape[2]):image = sitk.ReadImage(os.path.join(dicom_path, dicom_files[5+i]))  # 读取一个含有头信息的dicom格式的医学图像keys = image.GetMetaDataKeys()  # 获取它的头信息new_image = image2[:, :, i]for key in keys:new_image.SetMetaData(key, image.GetMetaData(key))  # 把第一张图像的头信息,插入到第二张图像sitk.WriteImage(new_image, os.path.join(dicom_out_path, '{}.dcm'.format(i)))print(i)

 3. 其他
主要参考资料
1. https://github.com/SimpleITK/SimpleITK/issues/378
2. https://blog.csdn.net/weixin_45625450/article/details/112275478

怎么把.nii文件转成.dcm文件相关推荐

  1. python将txt转换为csv_Python Pandas 三行代码将 txt 文件转换成 csv 文件

    今天需要处理几个比较大的 txt 文件,每个文件都在 2GB 以上,直接用 Excel 将其转换成 csv 文件显然是不太可行的,于是用 Python 中的数据处理神器 Pandas,三行代码就能搞定 ...

  2. bat脚本中获取上级目录_使用Python写一个可以监控Tomcat 运行的脚本,并且把.py文件转换成.exe文件...

    使用Python写一个可以监控Tomcat 运行的脚本,并且把.py文件转换成.exe文件 文章来源与博主本人的CSDN博客,博客地址:https://blog.csdn.net/weixin_435 ...

  3. java虚拟机编译文件,理解Java虚拟机(1)之一个.java文件编译成.class文件发生了什么...

    理解Java虚拟机(1)之一个.java文件编译成.class文件发生了什么 最近在看<深入理解Java虚拟机>弄明白了很多java的底层知识,决定分几部分总结下,从.java文件编译,到 ...

  4. 将ocx和DLL文件打包成cab文件,inf的编写

    From: http://icrwen.iteye.com/blog/1118766 http://blog.csdn.net/yimiyangguang1314/article/details/65 ...

  5. Python: 如何将py文件转成exe文件?

    Python: 如何将py文件转成exe文件? 1.安装PyInstaller模块 pip install PyInstaller 2.将py文件打包成exe执行文件 找到需要打包的py文件所在路径, ...

  6. C#.NET如何将cs文件编译成dll文件 exe文件 如何调用dll文件

    比如我要把TestDLL.cs文件编译成dll文件,则在命令提示符下,输入下面的命令,生成的文件为TestDLL.dll csc /target:library TestDLL.cs 注意前提是你安装 ...

  7. bat文件改成sh文件在linux上运行java程序

    最近公司迁移服务器,从windows系统改为linux系统,里面有一些老程序是直接用bat文件启动的. 在linux中需要启动.sh文件才行,所以需要将bat文件改成sh文件才行 先粘出bat文件和s ...

  8. csv文件转换成xlsx文件方法

    背景: 在实际工作中,我们经常会面对大批量的数据进行处理,其中将csv文件文件转换成xlsx文件就是其中的一项,废话少说,上家伙: 一般方法: 将csv文件另存为xlsx文件: 但实际中03版本(.x ...

  9. 如何将Ai文件转换成PDF文件

    要将Ai文件转换成PDF文件,请按照以下步骤操作: 1. 打开客汇宝网站软件并打开要转换的文件. 2. 点击"文件"菜单并选择"另存为". 3. 在" ...

  10. java文件打包jar文件_如何把JAVA文件打包成jar文件

    本文讲解了把java文件打包成jar文件的方法,经测试可行.由于作者没时间用批处理文件进行操作的方法没有列出来. (1)把一个java文件打包到当前目录   javac –d . *.java (2) ...

最新文章

  1. 求解线性最小二乘问题的奇异值分解及广义逆法的C++实现
  2. Linux设备驱动程序 第三版 读书笔记(一)
  3. django mysql搜索_Django--数据库查询操作
  4. 手把手教你C语言静态库的开发
  5. 设置nginx开机启动
  6. c3p0-config.xml
  7. Java 质数输出的经典算法题面试可以用
  8. python的parse函数没有执行——问题已解决
  9. 英语海报简笔php匹配img画,简单英语海报图片手绘,一年级英语海报图片 手绘?...
  10. ClickHouse函数介绍
  11. 小米10至尊纪念版和华为mate40的区别 哪个好
  12. 映客首推 “直播春晚”:小年夜登场开启线上狂欢
  13. Select 选择器
  14. python、idel、pycharm的安装使用
  15. css字行高怎么设,css文本行高怎么设置-电脑自学网
  16. All In One 第1章 安全与风险管理 (一)
  17. postgreSQL 致命错误: 对不起, 已经有太多的客户
  18. Shell expr
  19. 服务器动态文档,动态服务器网页.ppt
  20. 索尼分拆Vaio首现盈利曙光 业务未来将不再局限于PC

热门文章

  1. 圆柱螺旋压缩弹簧计算实例
  2. matlab-液压阀仿真
  3. python爬取微信群聊内容_群聊变赌场 微信QQ的这种“新玩法”应远离
  4. 【期刊会议系列】IEEE系列模板下载指南
  5. 第三章:logback 的配置
  6. c#利用API读取微信数据
  7. 【Spring】概述及IOC理论推导
  8. android 坏点测试软件,烧屏坏点检测软件下载-烧屏坏点检测官方安卓版v1.0-魅卓网...
  9. 蒸汽密度的计算公式,蒸汽流量计密度补偿计算公式
  10. 信息安全实验三 :PGP邮件加密软件的使用