【发布时间】:2020-09-21 15:55:38
【问题描述】:
我刚刚获得了 .nii.gz 格式的 82 个 nifti 文件的数据集,对于每个文件,我想要一个 .JSON 文件,其中包含每个 nifti 文件的相关元数据信息,我如何获得它?
【问题讨论】:
我刚刚获得了 .nii.gz 格式的 82 个 nifti 文件的数据集,对于每个文件,我想要一个 .JSON 文件,其中包含每个 nifti 文件的相关元数据信息,我如何获得它?
【问题讨论】:
你可以使用 SimpleITK 读取 Nifti 文件的元数据字典,然后使用 python 的 JSON 库将其写出来。
下面是一个例子:
import sys
import json
import SimpleITK as sitk
reader = sitk.ImageFileReader()
reader.SetFileName(sys.argv[1])
reader.LoadPrivateTagsOn()
reader.ReadImageInformation()
data_dictionary = {}
for k in reader.GetMetaDataKeys():
v = reader.GetMetaData(k)
data_dictionary[k] = v
print(json.dumps(data_dictionary))
我根据以下 SimpleITK 示例对其进行了改编: https://simpleitk.readthedocs.io/en/master/link_DicomImagePrintTags_docs.html
【讨论】:
import nibabel as nib
image = nib.load('file.nii.gz') # read image
print(image.header)
patient_data=str(image.header.extensions)
print(patient_data)
【讨论】: