              os.path.splitext(frame)[0],
              idx,
              self._output["suffix"]))
  
          if detected_face.mask is None or detected_face.mask.get(self._mask_type, None) is None:
              logger.warning("Mask type '%s' does not exist for frame '%s' index %s. Skipping",
                             self._mask_type, frame, idx)
              return
          image = self._create_image(detected_face)
          logger.trace("filename: '%s', image_shape: %s", filename, image.shape)
 
</s> remove         image = self._create_image(detected_face)
        logger.trace("filename: '%s', image_shape: %s", filename, image.shape)
        self._saver.save(filename, image)
 </s> add  </s> remove         filename = os.path.join(self._saver.location, "{}_{}_{}".format(
            os.path.splitext(frame)[0],
            idx,
            self._output["suffix"]))
 </s> add         if self._update_type == "output" and self._mask_type == "bisenet-fp":
            mask_types = [f"{self._mask_type}_{area}" for area in ("face", "head")]
        else:
            mask_types = [self._mask_type] </s> remove     def _create_image(self, detected_face):
 </s> add         for mask_type in mask_types:
            filename = os.path.join(self._saver.location, "{}_{}_{}".format(
                os.path.splitext(frame)[0],
                idx,
                f"{mask_type}_{self._output['suffix']}"))
            image = self._create_image(detected_face, mask_type)
            logger.trace("filename: '%s', image_shape: %s", filename, image.shape)
            self._saver.save(filename, image)

    def _create_image(self, detected_face, mask_type): </s> remove         sfx = "{}_mask_preview_".format(self._mask_type)
 </s> add         sfx = "mask_preview_" </s> remove             mask = cv2.resize(detected_face.mask[self._mask_type].mask,
 </s> add             mask = cv2.resize(detected_face.mask[mask_type].mask,
        if detected_face.mask is None or not any(mask in detected_face.mask
                                                 for mask in mask_types):
              os.path.splitext(frame)[0],
              idx,
              self._output["suffix"]))
  
        if detected_face.mask is None or not any(mask in detected_face.mask
                                                 for mask in mask_types):
              logger.warning("Mask type '%s' does not exist for frame '%s' index %s. Skipping",
                             self._mask_type, frame, idx)
              return
          image = self._create_image(detected_face)
          logger.trace("filename: '%s', image_shape: %s", filename, image.shape)
keep keep keep keep replace keep keep keep keep keep
 mask tool - Update to support masks that support multi-centering 
tools/mask/mask.py