From d63f13efedfc481dc6892a2db7c84427c8a275a4 Mon Sep 17 00:00:00 2001 From: Christopher Rhodes <christopher.rhodes@embl.de> Date: Thu, 21 Nov 2024 07:26:48 +0100 Subject: [PATCH] Hooked up overlay map to export runner --- model_server/base/roiset.py | 7 +++++++ tests/base/test_roiset.py | 8 ++++++++ 2 files changed, 15 insertions(+) diff --git a/model_server/base/roiset.py b/model_server/base/roiset.py index e11450aa..5afa6e40 100644 --- a/model_server/base/roiset.py +++ b/model_server/base/roiset.py @@ -713,6 +713,11 @@ class RoiSet(object): else: return acc_out + def export_object_identities_overlay_map(self, where, white_channel, prefix='obmap_overlay', **kwargs) -> str: + acc = self.get_object_identities_overlay_map(white_channel=white_channel, **kwargs) + fp = where / (prefix + '.tif') + return acc.write(fp, composite=True).name + def get_serializable_dataframe(self) -> pd.DataFrame: return self._df.drop(['expanded_slice', 'slice', 'relative_slice', 'binary_mask'], axis=1) @@ -973,6 +978,8 @@ class RoiSet(object): fp.parent.mkdir(exist_ok=True, parents=True) dacc.export_pyxcz(fp) record[k].append(str(fp)) + if k == 'labels_overlay': + record[k] = str(Path(k) / self.export_object_identities_overlay_map(subdir, white_channel=channel, **kp)) # export dataframe and patch masks record = {**record, **self.serialize(where, prefix=prefix)} diff --git a/tests/base/test_roiset.py b/tests/base/test_roiset.py index 9956b84b..f262d6a2 100644 --- a/tests/base/test_roiset.py +++ b/tests/base/test_roiset.py @@ -390,6 +390,14 @@ class TestRoiSetMultichannelProducts(BaseTestRoiSetMonoProducts, unittest.TestCa self.assertEqual(acc_out.nz, 1) acc_out.write(where / 'overlay_composite_mip.tif', composite=True) + # export via .run_exports() method + self.roiset.run_exports( + where, + channel=-1, + prefix='run_exports', + params=RoiSetExportParams(**{'labels_overlay': {'transparency': 0.2, 'mip': True, 'rescale_clip': 0.00}}) + ) + def test_multichannel_annotated_zstack(self): -- GitLab