code: def __init__(
      self,
      key: str,
      class_: IndicatorClass,
      uuid: str,
      props: Dict[str, any],
      *,
      select: Optional[StepSelect] = None,
      is_mean: bool = False,
  ):
      self.uuid = uuid
      self.class_ = class_
      self.key = key
      self.props = props
      if class_ == IndicatorClass.tensor and props.get(
          "is_once", False
      ):
          select = None
      if select is None:
          select = StepSelect(None, None)
      self.select = select
      self.is_mean = is_mean
  
imports: from enum import Enum
  from pathlib import Path
  from typing import List, Optional, Tuple, NamedTuple, Dict, Union
  from labml import lab
  from labml.internal import util
  from labml.internal.experiment.experiment_run import RunInfo
  from labml.internal.util.strings import is_pattern_match
label_desc: Use image node_id 1 to create a new Indicator object  with example: obj = Indicator(key, class_, uuid, props)