日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學(xué)無先后,達(dá)者為師

網(wǎng)站首頁 編程語言 正文

將numpy array保存為nii格式 itk-snap打不開

作者:平凡的久月 更新時間: 2022-04-01 編程語言

將.nii文件讀取成numpy array是很常見的,但將分割好的結(jié)果numpy array保存為nii格式卻也是必須的。
現(xiàn)在介紹兩種將numpy array保存為nii格式的方法。

1. simpleITK

## using simpleITK to load and save data.
import SimpleITK as sitk
itk_img = sitk.ReadImage('./nifti.nii.gz')
img = sitk.GetArrayFromImage(itk_img)
print("img shape:",img.shape)

## save 
out = sitk.GetImageFromArray(img)
sitk.WriteImage(out,'simpleitk_save.nii.gz')

2. Nibabel

import nibabel as nib 
import numpy as np 
 
new_image = nib.Nifti1Image(my_arr, np.eye(4)) 
nib.save(new_image, 'nifti.nii.gz') 

******** 高能預(yù)警
將 numpy array 保存為 nii 格式圖像之后,使用 itk-snap 卻打不開,這是為什么呢?
原來 itk-snap 只接受 int16 類型的數(shù)據(jù),所以你需要 將 numpy 數(shù)組強(qiáng)制轉(zhuǎn)換成 int16 類型。

## save 
out = sitk.GetImageFromArray(img)
out = out.astype(np.int16)
sitk.WriteImage(out,'simpleitk_save.nii.gz')

原文鏈接:https://blog.csdn.net/qq_33254870/article/details/103387991

欄目分類
最近更新