class_docstr: Unify different panoptic annotation/prediction formats
code: def semantic_masks(self):
      for sid in self._seg_ids:
          sinfo = self._sinfo.get(sid)
          if sinfo is None or sinfo["isthing"]:
              # Some pixels (e.g. id 0 in PanopticFPN) have no instance or semantic predictions.
              continue
          yield (self._seg == sid).numpy().astype(np.bool), sinfo
  
imports: import colorsys
  import logging
  import math
  from enum import Enum, unique
  import numpy
  import matplotlib
  import matplotlib.colors
  import matplotlib.figure
  import torch
  from matplotlib.backends.backend_agg import FigureCanvasAgg
  from PIL import Image
  from ..data.registry.catalog import MetadataCatalog
  from ..data.structures import BitMasks, Boxes, BoxMode, Keypoints, PolygonMasks
label_desc: Use image node_id 3 for calling the _PanopticPrediction obj's underlying member method code with example usage: obj.semantic_masks() without return types