From e9a590a040b4978be2aab50713e9bce723bffb77 Mon Sep 17 00:00:00 2001 From: laynholt Date: Tue, 24 Jun 2025 15:44:34 +0000 Subject: [PATCH] added renumbering for pred mask --- core/utils/measures.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/core/utils/measures.py b/core/utils/measures.py index af92a56..dbac7db 100644 --- a/core/utils/measures.py +++ b/core/utils/measures.py @@ -6,7 +6,7 @@ This code is adapted from the following codes: import numpy as np from numpy.typing import NDArray from numba import jit -from skimage import segmentation +import fastremap from scipy.optimize import linear_sum_assignment from typing import Any @@ -141,6 +141,9 @@ def compute_segmentation_tp_fp_fn( ground_truth_mask = _ensure_ndim(ground_truth_mask, 3, insert_position=0) predicted_mask = _ensure_ndim(predicted_mask, 3, insert_position=0) + ground_truth_mask, _ = fastremap.renumber(ground_truth_mask) + predicted_mask, _ = fastremap.renumber(predicted_mask) + num_channels = ground_truth_mask.shape[0] true_positive_list = [] false_positive_list = [] @@ -781,7 +784,7 @@ def _remove_boundary_objects(mask: np.ndarray) -> np.ndarray: mask[np.isin(mask, border_labels[1:])] = 0 # Reindex the mask so that labels are sequential. - new_mask, _, _ = segmentation.relabel_sequential(mask) + new_mask, _ = fastremap.renumber(mask) return new_mask