From 64c3321dad00917f3c6f470f37cb594022c51319 Mon Sep 17 00:00:00 2001 From: KumoLiu Date: Mon, 4 Sep 2023 13:10:21 +0800 Subject: [PATCH 1/9] fix #6928 Signed-off-by: KumoLiu --- monai/data/image_reader.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/monai/data/image_reader.py b/monai/data/image_reader.py index 9ccf79d163..d5bfa68938 100644 --- a/monai/data/image_reader.py +++ b/monai/data/image_reader.py @@ -764,9 +764,8 @@ def _get_seg_data(self, img): else: metadata["labels"] = {} all_segs = np.zeros([*spatial_shape, n_classes]) - for i, (frames, description) in enumerate(self._get_frame_data(img)): - class_name = description.SegmentDescription + class_name = description.SegmentLabel if hasattr(description, "SegmentLabel") else description.SegmentDescription if class_name not in metadata["labels"].keys(): metadata["labels"][class_name] = i class_num = metadata["labels"][class_name] From edd33bff6fba07b006e31a70faf1bb1aff033c7a Mon Sep 17 00:00:00 2001 From: KumoLiu Date: Mon, 4 Sep 2023 13:36:32 +0800 Subject: [PATCH 2/9] minor fix Signed-off-by: KumoLiu --- monai/data/image_reader.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/monai/data/image_reader.py b/monai/data/image_reader.py index d5bfa68938..6758a58bff 100644 --- a/monai/data/image_reader.py +++ b/monai/data/image_reader.py @@ -765,7 +765,7 @@ def _get_seg_data(self, img): metadata["labels"] = {} all_segs = np.zeros([*spatial_shape, n_classes]) for i, (frames, description) in enumerate(self._get_frame_data(img)): - class_name = description.SegmentLabel if hasattr(description, "SegmentLabel") else description.SegmentDescription + class_name = description.SegmentDescription if hasattr(description, "SegmentDescription") else f"label_{i}" if class_name not in metadata["labels"].keys(): metadata["labels"][class_name] = i class_num = metadata["labels"][class_name] From 1493b0dd9d01c734e94986b2f7c80747bb60ef1c Mon Sep 17 00:00:00 2001 From: KumoLiu Date: Mon, 4 Sep 2023 13:39:29 +0800 Subject: [PATCH 3/9] minor fix Signed-off-by: KumoLiu --- monai/data/image_reader.py | 1 + 1 file changed, 1 insertion(+) diff --git a/monai/data/image_reader.py b/monai/data/image_reader.py index 6758a58bff..c1bd3550d9 100644 --- a/monai/data/image_reader.py +++ b/monai/data/image_reader.py @@ -764,6 +764,7 @@ def _get_seg_data(self, img): else: metadata["labels"] = {} all_segs = np.zeros([*spatial_shape, n_classes]) + for i, (frames, description) in enumerate(self._get_frame_data(img)): class_name = description.SegmentDescription if hasattr(description, "SegmentDescription") else f"label_{i}" if class_name not in metadata["labels"].keys(): From a28a423c526b5852fc69493f34b0cd61338ef7a7 Mon Sep 17 00:00:00 2001 From: KumoLiu Date: Mon, 4 Sep 2023 13:48:09 +0800 Subject: [PATCH 4/9] try `SegmentLabel` first Signed-off-by: KumoLiu --- monai/data/image_reader.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/monai/data/image_reader.py b/monai/data/image_reader.py index c1bd3550d9..6999e44ee6 100644 --- a/monai/data/image_reader.py +++ b/monai/data/image_reader.py @@ -766,7 +766,7 @@ def _get_seg_data(self, img): all_segs = np.zeros([*spatial_shape, n_classes]) for i, (frames, description) in enumerate(self._get_frame_data(img)): - class_name = description.SegmentDescription if hasattr(description, "SegmentDescription") else f"label_{i}" + class_name = description.SegmentLabel if hasattr(description, "SegmentLabel") else description.SegmentDescription if class_name not in metadata["labels"].keys(): metadata["labels"][class_name] = i class_num = metadata["labels"][class_name] From a9cbd49cc03aa537e370f9560f27c24e58d97ec0 Mon Sep 17 00:00:00 2001 From: KumoLiu Date: Mon, 4 Sep 2023 14:14:21 +0800 Subject: [PATCH 5/9] fix flake8 Signed-off-by: KumoLiu --- monai/data/image_reader.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/monai/data/image_reader.py b/monai/data/image_reader.py index 6999e44ee6..0962e86176 100644 --- a/monai/data/image_reader.py +++ b/monai/data/image_reader.py @@ -766,7 +766,9 @@ def _get_seg_data(self, img): all_segs = np.zeros([*spatial_shape, n_classes]) for i, (frames, description) in enumerate(self._get_frame_data(img)): - class_name = description.SegmentLabel if hasattr(description, "SegmentLabel") else description.SegmentDescription + class_name = ( + description.SegmentLabel if hasattr(description, "SegmentLabel") else description.SegmentDescription + ) if class_name not in metadata["labels"].keys(): metadata["labels"][class_name] = i class_num = metadata["labels"][class_name] From 16bac86314325d595e704a3dda3d13413cb430f4 Mon Sep 17 00:00:00 2001 From: KumoLiu Date: Mon, 4 Sep 2023 18:30:43 +0800 Subject: [PATCH 6/9] try `SegmentDescription` first Signed-off-by: KumoLiu --- monai/data/image_reader.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/monai/data/image_reader.py b/monai/data/image_reader.py index 0962e86176..76abd1ec3f 100644 --- a/monai/data/image_reader.py +++ b/monai/data/image_reader.py @@ -767,7 +767,7 @@ def _get_seg_data(self, img): for i, (frames, description) in enumerate(self._get_frame_data(img)): class_name = ( - description.SegmentLabel if hasattr(description, "SegmentLabel") else description.SegmentDescription + description.SegmentDescription if hasattr(description, "SegmentDescription") else description.SegmentLabel ) if class_name not in metadata["labels"].keys(): metadata["labels"][class_name] = i From 6a4a980829479653b3047591c4387a95791a7fce Mon Sep 17 00:00:00 2001 From: KumoLiu Date: Mon, 4 Sep 2023 18:35:25 +0800 Subject: [PATCH 7/9] fix flake8 Signed-off-by: KumoLiu --- monai/data/image_reader.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/monai/data/image_reader.py b/monai/data/image_reader.py index 76abd1ec3f..d6b67bf525 100644 --- a/monai/data/image_reader.py +++ b/monai/data/image_reader.py @@ -767,7 +767,9 @@ def _get_seg_data(self, img): for i, (frames, description) in enumerate(self._get_frame_data(img)): class_name = ( - description.SegmentDescription if hasattr(description, "SegmentDescription") else description.SegmentLabel + description.SegmentDescription + if hasattr(description, "SegmentDescription") + else description.SegmentLabel ) if class_name not in metadata["labels"].keys(): metadata["labels"][class_name] = i From 591351aa7ec17aa5a186413ede587e57cd85c97e Mon Sep 17 00:00:00 2001 From: KumoLiu Date: Mon, 4 Sep 2023 21:21:27 +0800 Subject: [PATCH 8/9] address comments Signed-off-by: KumoLiu --- monai/data/image_reader.py | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/monai/data/image_reader.py b/monai/data/image_reader.py index d6b67bf525..c3fc9c9421 100644 --- a/monai/data/image_reader.py +++ b/monai/data/image_reader.py @@ -766,11 +766,7 @@ def _get_seg_data(self, img): all_segs = np.zeros([*spatial_shape, n_classes]) for i, (frames, description) in enumerate(self._get_frame_data(img)): - class_name = ( - description.SegmentDescription - if hasattr(description, "SegmentDescription") - else description.SegmentLabel - ) + class_name = getattr(description, "SegmentDescription", description.SegmentLabel) if class_name not in metadata["labels"].keys(): metadata["labels"][class_name] = i class_num = metadata["labels"][class_name] From a33c329eddf0569d76724c628615ed16ec0b7bc2 Mon Sep 17 00:00:00 2001 From: KumoLiu Date: Mon, 4 Sep 2023 21:24:48 +0800 Subject: [PATCH 9/9] address comments Signed-off-by: KumoLiu --- monai/data/image_reader.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/monai/data/image_reader.py b/monai/data/image_reader.py index c3fc9c9421..0f8de6b57d 100644 --- a/monai/data/image_reader.py +++ b/monai/data/image_reader.py @@ -766,7 +766,8 @@ def _get_seg_data(self, img): all_segs = np.zeros([*spatial_shape, n_classes]) for i, (frames, description) in enumerate(self._get_frame_data(img)): - class_name = getattr(description, "SegmentDescription", description.SegmentLabel) + segment_label = getattr(description, "SegmentLabel", f"label_{i}") + class_name = getattr(description, "SegmentDescription", segment_label) if class_name not in metadata["labels"].keys(): metadata["labels"][class_name] = i class_num = metadata["labels"][class_name]