diff --git a/src/portal_visualization/builders/imaging_builders.py b/src/portal_visualization/builders/imaging_builders.py index 95c2860..feef8cd 100644 --- a/src/portal_visualization/builders/imaging_builders.py +++ b/src/portal_visualization/builders/imaging_builders.py @@ -116,7 +116,7 @@ def _add_segmentation_image(self, dataset): raise RuntimeError(f"Error while searching for segmentation images: {e}") filtered_images = [ - img for img in found_images + img for img in found_images if not any(subdir in img for subdir in base_image_dirs) ] @@ -247,15 +247,15 @@ def __init__(self, entity, groups_token, assets_endpoint, **kwargs): self.seg_image_pyramid_regex = IMAGE_PYRAMID_DIR self.view_type = KAGGLE_IMAGE_VIEW_TYPE - # Needed to adjust to various directory structures. For older datasets, the image pyramids will be present in either 'processed_microscopy' , 'processedMicroscopy' - # while newer datasets have lab_processed as directory. + # Needed to adjust to various directory structures. For older datasets, the image pyramids will be present in + # either 'processed_microscopy' , 'processedMicroscopy' while newer datasets have lab_processed as directory. image_dir = SEGMENTATION_SUPPORT_IMAGE_SUBDIR file_paths_found = self._get_file_paths() paths = get_found_images_all(file_paths_found) matched_dirs = {dir for dir in base_image_dirs if any(dir in img for img in paths)} - image_dir = list(matched_dirs)[0] if len(matched_dirs) >= 0 else image_dir + image_dir = next(iter(matched_dirs), image_dir) self.image_pyramid_regex = f"{IMAGE_PYRAMID_DIR}/{image_dir}" diff --git a/src/portal_visualization/constants.py b/src/portal_visualization/constants.py index 5d344eb..cb18d2a 100644 --- a/src/portal_visualization/constants.py +++ b/src/portal_visualization/constants.py @@ -8,4 +8,4 @@ } # To filter base image pyramids when finding segmentation mask images (kaggle-1, kaggle-2) -base_image_dirs = ['lab_processed', 'processed_microscopy' , 'processedMicroscopy'] \ No newline at end of file +base_image_dirs = ['lab_processed', 'processed_microscopy', 'processedMicroscopy'] diff --git a/src/portal_visualization/utils.py b/src/portal_visualization/utils.py index 1da54be..5d37848 100644 --- a/src/portal_visualization/utils.py +++ b/src/portal_visualization/utils.py @@ -84,6 +84,7 @@ def get_found_images(image_pyramid_regex, file_paths_found): ] return found_images + def get_found_images_all(file_paths_found): found_images = [ path for path in get_matches( @@ -93,6 +94,7 @@ def get_found_images_all(file_paths_found): ] return found_images + def get_image_metadata(self, img_url): """ Retrieve metadata from an image URL.