虽然有相应的工具包,但本人还是更习惯用python,一个很简单的函数
import nibabel as nib
import os
def convert_nii_to_img_hdr(nii_file):
# 读取NIfTI文件
nii_img = nib.load(nii_file)
# 获取NIfTI数据数组
data_array = nii_img.get_fdata()
# 获取NIfTI头信息
header = nii_img.header
# 提取原始文件名(不包含路径和扩展名)
file_name = os.path.splitext(os.path.basename(nii_file))[0]
# 构建IMG和HDR文件的路径,保存到指定目录
output_directory = r'C:\Users\XDDD\Desktop\new'
img_file = os.path.join(output_directory, f"{file_name}.img")
hdr_file = os.path.join(output_directory, f"{file_name}.hdr")
# 将数据保存为IMG和HDR文件
nib.save(nib.Nifti1Image(data_array, None, header), img_file)
# 由于Nibabel的HDR保存功能有问题,这里我们手动保存头信息到HDR文件
with open(hdr_file, 'wb') as hdr_f:
header.write_to(hdr_f)