anomalib.utils.loggers.tensorboard

Tensorboard logger with add image interface.

Module Contents

Classes

AnomalibTensorBoardLogger

Logger for tensorboard.

class anomalib.utils.loggers.tensorboard.AnomalibTensorBoardLogger(save_dir: str, name: Optional[str] = 'default', version: Optional[Union[int, str]] = None, log_graph: bool = False, default_hp_metric: bool = True, prefix: str = '', **kwargs)[source]

Bases: anomalib.utils.loggers.base.ImageLoggerBase, pytorch_lightning.loggers.tensorboard.TensorBoardLogger

Logger for tensorboard.

Adds interface for add_image in the logger rather than calling the experiment object.

Note

Same as the Tensorboard Logger provided by PyTorch Lightning and the doc string is reproduced below.

Logs are saved to os.path.join(save_dir, name, version). This is the default logger in Lightning, it comes preinstalled.

Example

>>> from pytorch_lightning import Trainer
>>> from anomalib.utils.loggers import AnomalibTensorBoardLogger
>>> logger = AnomalibTensorBoardLogger("tb_logs", name="my_model")
>>> trainer = Trainer(logger=logger)
Parameters
  • save_dir (str) – Save directory

  • name (Optional, str) – Experiment name. Defaults to 'default'. If it is the empty string then no per-experiment subdirectory is used.

  • version (Optional, int, str) – Experiment version. If version is not specified the logger inspects the save directory for existing versions, then automatically assigns the next available version. If it is a string then it is used as the run-specific subdirectory name, otherwise 'version_${version}' is used.

  • log_graph (bool) – Adds the computational graph to tensorboard. This requires that the user has defined the self.example_input_array attribute in their model.

  • default_hp_metric (bool) – Enables a placeholder metric with key hp_metric when log_hyperparams is called without a metric (otherwise calls to log_hyperparams without a metric are ignored).

  • prefix (str) – A string to put at the beginning of metric keys.

  • **kwargs – Additional arguments like comment, filename_suffix, etc. used by SummaryWriter can be passed as keyword arguments in this logger.

add_image(image: Union[numpy.ndarray, matplotlib.figure.Figure], name: Optional[str] = None, **kwargs: Any)[source]

Interface to add image to tensorboard logger.

Parameters
  • image (Union[np.ndarray, Figure]) – Image to log

  • name (Optional[str]) – The tag of the image

  • kwargs – Accepts only global_step (int). The step at which to log the image.