class_docstr: Fully Convolutional Cross-Scale-Flows for Image-based Defect Detection.
  
  Args:
      hprams (DictConfig | ListConfig): Model params
class_docstr_tok: ["Fully","Convolutional","Cross-Scale-Flows","for","Image-based","Defect","Detection",".","Args",":","hprams","(","DictConfig","|","ListConfig",")",":","Model","params"]
code: def __init__(self, hparams: DictConfig | ListConfig) -> None:
      super().__init__(
          input_size=hparams.model.input_size,
          n_coupling_blocks=hparams.model.n_coupling_blocks,
          cross_conv_hidden_channels=hparams.model.cross_conv_hidden_channels,
          clamp=hparams.model.clamp,
          num_channels=3,
      )
      self.hparams: DictConfig | ListConfig  # type: ignore
      self.save_hyperparameters(hparams)
  
imports: from __future__ import annotations
  import logging
  import torch
  from omegaconf import DictConfig, ListConfig
  from pytorch_lightning.callbacks import Callback, EarlyStopping
  from pytorch_lightning.utilities.types import STEP_OUTPUT
  from torch import Tensor
  from anomalib.models.components import AnomalyModule
  from .loss import CsFlowLoss
  from .torch_model import CsFlowModel
label_desc: Use image node_id 1 to create a new CsflowLightning object from inherited base classes: Csflow with example: obj = CsflowLightning(hparams)