nii.gz 文件
.nii.gz 文件通常是医学影像数据的一种常见格式,比如神经影像(如脑部MRI)。这种文件格式通常是经过gzip压缩的NIfTI格式(Neuroimaging Informatics Technology Initiative)。
要在Python中查看.nii.gz文件,你可以使用一些专门的库,如Nibabel(NiBabel是用于读取和写入神经影像数据的Python库)和SimpleITK(SimpleITK是一个用于医学影像处理的库)。
Nibabel
安装
$ pip install nibabel
使用
import nibabel as nib
import matplotlib.pyplot as plt
import seaborn as sns
import ossns.set_style('darkgrid')img1_path = './testData/test.nii.gz'img = nib.load(img1_path)# 获取图像数据
data = img.get_fdata()# 可视化每一层切片
num_slices = data.shape[-1]# 设置子图的行数和列数
num_rows = num_slices // 10 + 1 # 每行显示10个切片
num_cols = min(num_slices, 10)# 设置子图的大小
fig, axes = plt.subplots(num_rows, num_cols, figsize=(15, 15))# 遍历每一层切片并可视化
for i in range(num_slices):row_idx = i // 10col_idx = i % 10# 在子图中显示每一层切片axes[row_idx, col_idx].imshow(data[:, :, i], cmap='gray')axes[row_idx, col_idx].axis('off') # 关闭坐标轴# 如果切片数量不是10的倍数,隐藏多余的子图
for i in range(num_slices, num_rows * num_cols):row_idx = i // 10col_idx = i % 10fig.delaxes(axes[row_idx, col_idx])plt.show()
运行结果