Skip to main content

bscan_image_and_mask_generation_algorithm

Algorithms and related functionality for simply outputting data to CSV.

Classes

BscanImageAndMaskGenerationAlgorithm

class BscanImageAndMaskGenerationAlgorithm(    datastructure: DataStructure,    segmentation_configs: list[SegmentationConfig],    save_path: Optional[Union[str, os.PathLike]] = None,    output_original_bscans: bool = False,    image_format: ImageFormats = ImageFormats.JPEG,    image_optimize: bool = True,    image_quality: int = 90,    image_subsampling: int = 0,    image_progressive: bool = True,    image_transparency: bool = False,    **kwargs: Any,):

Algorithm that outputs images of B-scans alongside their segmentation masks.

Initializes the BscanImageAndMaskGenerationAlgorithm.

Arguments

  • datastructure: DataStructure object describing the data.
  • segmentation_configs: List of segmentation configurations.
  • output_original_bscans: Flag to save original B-scans.
  • image_format: Format for saving images, JPEG and PNG are supported.
  • image_optimize: Flag to optimize images.
  • image_quality: Quality of saved images.
  • image_subsampling: Subsampling for saved images.
  • image_progressive: Flag for progressive saving.
  • image_transparency: Flag for transparency in PNG images.
  • save_path: Deprecated. Use the BITFOUNT_OUTPUT_DIR, BITFOUNT_TASK_RESULTS, or BITFOUNT_PRIMARY_RESULTS_DIR environment variables instead to determine output location.
  • ****kwargs**: Additional keyword arguments for the base class.

Note 'image_subsampling' and 'image_progressive' only apply to JPEG format and are ignored for PNG. 'image_transparency' only applies to PNG format and is ignored for JPEG.

Ancestors

Variables

Methods


modeller

def modeller(    self, *, context: ProtocolContext, **kwargs: Any,)> NoResultsModellerAlgorithm:

Returns the modeller-side of the algorithm.

Arguments

  • context: Optional. Run-time protocol context details for running.
  • ****kwargs**: Additional keyword arguments.

Returns NoResultsModellerAlgorithm instance.

worker

def worker(    self,    *,    context: ProtocolContext,    **kwargs: Any,)> bitfount.federated.algorithms.ophthalmology.bscan_image_and_mask_generation_algorithm._WorkerSide:

Returns the worker-side of the algorithm.

Arguments

  • context: Optional. Run-time protocol context details for running.
  • ****kwargs**: Additional keyword arguments.

Returns _WorkerSide instance.

ImageFormats

class ImageFormats(value, names=None, *, module=None, qualname=None, type=None, start=1):

Supported image formats for saving images.

Ancestors

Variables

  • static JPEG
  • static PNG

ImageSaveOptions

class ImageSaveOptions(    image_format: ImageFormats = ImageFormats.JPEG,    image_optimize: bool = True,    image_quality: int = 90,    image_subsampling: int = 0,    image_progressive: bool = True,    image_transparency: bool = False,):

Options for saving images.

Note: 'image_subsampling' and 'image_progressive' only apply to JPEG format and are ignored for PNG. Note: 'image_transparency' only applies to PNG format and is ignored for JPEG.

Variables

  • static image_optimize : bool
  • static image_progressive : bool
  • static image_quality : int
  • static image_subsampling : int
  • static image_transparency : bool

SegmentationConfig

class SegmentationConfig(    id: str, color: tuple[int, int, int], label: Optional[str] = None,):

Configuration for a segmentation mask.

Ancestors

  • bitfount.types.UsedForConfigSchemas

Variables

  • static color : tuple[int, int, int]
  • static id : str
  • static label : Optional[str]

Methods


validate_args

def validate_args(self)> None:

Validate a segmentation configuration.

Ensures that given config complies with the expected structure and types. If label is not provided, it defaults to the ID. Checks for color values that adhere to the RGB format.

SegmentationConfigList

class SegmentationConfigList(segmentation_config_list: list[SegmentationConfig]):

Configuration for a list of segmentation masks.

Variables

Methods


get_segmentation_config

def get_segmentation_config(    self,)> tuple[dict[str, int], dict[str, tuple[int, int, int]], dict[str, str]]:

Get the segmentation configuration as a tuple of dictionaries.

Returns Tuple of dictionaries containing segmentation labels and colors.

validate_args

def validate_args(self)> None:

Validate the arguments in the segmentation config list.