From 99aeda1c24246ca1b5dab826d4f01f9a5a27648a Mon Sep 17 00:00:00 2001 From: Christopher Rhodes <christopher.rhodes@embl.de> Date: Thu, 7 Mar 2024 10:41:18 +0100 Subject: [PATCH] Standardize that export record is a dict of pathlib.Path objects --- model_server/base/roiset.py | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/model_server/base/roiset.py b/model_server/base/roiset.py index 1a33c090..c44023db 100644 --- a/model_server/base/roiset.py +++ b/model_server/base/roiset.py @@ -474,7 +474,15 @@ class RoiSet(object): dfe['patch'] = self._df.apply(lambda r: _make_patch(r), axis=1) return dfe - def run_exports(self, where, channel, prefix, params: RoiSetExportParams): + def run_exports(self, where: Path, channel, prefix, params: RoiSetExportParams) -> dict: + """ + Export various representations of ROIs, e.g. patches, annotated stacks, and object maps. + :param where: path of directory in which to write all export products + :param channel: color channel of products to export + :param prefix: prefix of the name of each product's file or subfolder + :param params: RoiSetExportParams object describing which products to export and with which parameters + :return: dict of Path objects describing the location of single-file export products + """ record = {} if not self.count: return @@ -506,11 +514,10 @@ class RoiSet(object): if k == 'annotated_zstacks': self.export_annotated_zstack(subdir, prefix=pr, **kp) if k == 'object_classes': - # record[k] = {} for kc, acc in self.object_class_maps.items(): fp = subdir / kc / (pr + '.tif') write_accessor_data_to_file(fp, acc) - record[f'{k}_{kc}'] = fp.__str__() + record[f'{k}_{kc}'] = fp if k == 'dataframe': dfpa = subdir / (pr + '.csv') dfpa.parent.mkdir(parents=True, exist_ok=True) -- GitLab