From 820c8f2522f72b57381ce9c59efa52d6004a0345 Mon Sep 17 00:00:00 2001 From: Adam Aji <3487395+adamaji@users.noreply.github.com> Date: Sat, 20 Feb 2021 01:15:53 -0500 Subject: [PATCH] Throw warning when reading NRRD05 files to upgrade to ITK >= 5.2 Signed-off-by: Adam Aji <3487395+adamaji@users.noreply.github.com> --- monai/data/image_reader.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/monai/data/image_reader.py b/monai/data/image_reader.py index d0f5f4aefc..e458833979 100644 --- a/monai/data/image_reader.py +++ b/monai/data/image_reader.py @@ -10,6 +10,7 @@ # limitations under the License. import os +import warnings from abc import ABC, abstractmethod from typing import TYPE_CHECKING, Any, Callable, Dict, List, Optional, Sequence, Tuple, Union @@ -219,6 +220,16 @@ def _get_meta_dict(self, img) -> Dict: # ignore deprecated, legacy members that cause issues if key.startswith("ITK_original_"): continue + if ( + key == "NRRD_measurement frame" + and int(itk.Version.GetITKMajorVersion()) == 5 + and int(itk.Version.GetITKMinorVersion()) < 2 + ): + warnings.warn( + "Ignoring 'measurement frame' field. " + "Correct reading of NRRD05 files requires ITK >= 5.2: `pip install --upgrade --pre itk`" + ) + continue meta_dict[key] = img_meta_dict[key] meta_dict["origin"] = np.asarray(img.GetOrigin()) meta_dict["spacing"] = np.asarray(img.GetSpacing())