網上已經有很多代碼了,但是注釋的都不全,看起來很費解,我自己加了一些注釋,重新發出來,盡可能的通俗易懂
讀取前需要先安裝庫
pip install nibabel
pip install matplotlib
from nibabel.viewers import OrthoSlicer3D
from nibabel import nifti1
import nibabel as nib
from matplotlib import pylab as plt
import matplotlib
# matplotlib.use('TkAgg')
# 文件名,nii或nii.gz
example_filename = 'xxxx'
img = nib.load(example_filename)
# 打印文件信息
print(img)
print(img.dataobj.shape)
#shape不一定只有三個參數,打印出來看一下
width, height, queue = img.dataobj.shape
# 顯示3D圖像
OrthoSlicer3D(img.dataobj).show()
# 計算看需要多少個位置來放切片圖
x = int((queue/10) ** 0.5) + 1
num = 1
# 按照10的步長,切片,顯示2D圖像
for i in range(0, queue, 10):
img_arr = img.dataobj[:, :, i]
plt.subplot(x, x, num)
plt.imshow(img_arr, cmap='gray')
num += 1
plt.show()
其他操作,后續再補充