Source code for geographer.label_makers.label_maker_base
"""Base class for label makers.Base class for label makers that generate labels (for any kind ofcomputer vision task) from a connector's vectors."""from__future__importannotationsimportloggingfromabcimportABC,abstractmethodfromtypingimportTYPE_CHECKINGfrompydanticimportBaseModelifTYPE_CHECKING:fromgeographer.connectorimportConnectorfromgeographer.base_model_dict_conversion.save_load_base_model_mixinimport(SaveAndLoadBaseModelMixIn,)# loggerlog=logging.getLogger(__name__)
[docs]classLabelMaker(ABC,BaseModel,SaveAndLoadBaseModelMixIn):"""Base class for label makers. Base class for label makers. that generate labels (for any kind of computer vision task) from a connector's vectors. """
[docs]@abstractmethoddefmake_labels(self,connector:Connector,raster_names:list[str]|None=None,):"""Create segmentation labels. Args: raster_names: raster names to create labels for. Defaults to None (i.e. all raster without a label). """
[docs]@abstractmethoddefdelete_labels(self,connector:Connector,raster_names:list[str]|None=None,):"""Delete (pixel) labels from the connector's labels_dir. Args: raster_names: names of rasters for which to delete labels. Defaults to None, i.e. all labels. """
[docs]defrecompute_labels(self,connector:Connector,raster_names:list[str]|None=None,):"""Recompute labels. Equivalent to delete_labels followed by make_labels """self.delete_labels(connector,raster_names)self.make_labels(connector,raster_names)