def write_metadata(image_path: Path, image: sitk.Image): """Write down the metadata keys to a txt file""" metadata = {} for key in image.GetMetaDataKeys(): metadata[key] = image.GetMetaData(key) metadata_path = Path(image_path.parent, image_path.stem + '_metadata.txt') util.write_json(metadata, metadata_path)
def copy_relevant_metadata(new_image: sitk.Image, old_image: sitk.Image, necessary_keys: list = None): if necessary_keys is None: necessary_keys = ['Unit'] for key in necessary_keys: try: new_image.SetMetaData(key, old_image.GetMetaData(key)) except: warnings.warn('The {0} key does not exist'.format(key))
def get_metadata_dictionary(image: SimpleITK.Image) -> dict: dictionary = dict() for key in image.GetMetaDataKeys(): value = image.GetMetaData(key) dictionary[key] = np.array(value) return dictionary