  
      def _training(self) -> None:
          """ The training process to be run inside a thread. """
          try:
              sleep(1)  # Let preview instructions flush out to logger
              logger.debug("Commencing Training")
              logger.info("Loading data, this may take a while...")
              model = self._load_model()
              trainer = self._load_trainer(model)
              self._run_training_cycle(model, trainer)
 
</s> remove     scaling: float, optional
        The amount to scale the final preview image by. Default: `1.0`
 </s> add  </s> remove     @classmethod
    def _create_resizable_window(cls, name: str, image_shape: tuple) -> None:
        """ Create a resizable OpenCV window to hold the preview image.

        Parameters
        ----------
        name: str
            The name to display in the window header and for window identification
        shape: tuple
            The (`rows`, `columns`, `channels`) of the image to be displayed
        """
        logger.debug("Creating named window '%s' for image shape %s", name, image_shape)
        height, width = image_shape[:2]
        cv2.namedWindow(name, cv2.WINDOW_GUI_EXPANDED)
        cv2.resizeWindow(name, width, height)

    def _do_preview(self, window_created: bool) -> bool:
        """" Display an image preview in a resizable window

        Parameters
        ----------
        window_created: bool
            ``True`` if a preview window has been created otherwise ``False``

        Returns
        -------
        bool
            ``True`` if a preview window has been created otherwise ``False``
        """
        with self._lock:
            for name, image in self._preview_buffer.items():
                if not window_created:
                    self._create_resizable_window(name, image.shape)
                cv2.imshow(name, image)  # pylint: disable=no-member
            window_created = bool(self._preview_buffer) if not window_created else window_created
        return window_created

 </s> add  </s> remove     def get_argument_list():
 </s> add     def get_argument_list() -> List[Dict[str, Any]]: </s> remove     def _preview_monitor(self, key_press: str) -> bool:
        """ Monitors keyboard presses on the pop-up OpenCV Preview Window.

        Parameters
        ----------
        key_press: str
            The key press received from OpenCV or ``None`` if no press received

        Returns
        -------
        bool
            ``True`` if the process should continue training. ``False`` if an exit has been
            requested and process should terminate
        """
        if not self._args.preview:
            return True

        if key_press == ord("\n") or key_press == ord("\r"):
            logger.debug("Exit requested")
            return False

        if key_press == ord("s"):
            print("\n")
            logger.info("Save requested")
            self._save_now = True
        if key_press == ord("r"):
            print("\n")
            logger.info("Refresh preview requested")
            self._refresh_preview = True
        if key_press == ord("m"):
            print("\n")
            logger.verbose("Toggle mask display requested")  # type:ignore
            self._toggle_preview_mask = True

        return True

 </s> add  </s> remove #: lib/cli/args.py:1066
msgid "Percentage amount to scale the preview by. 100%% is the model output size."
msgstr ""

 </s> add 
            sleep(0.5)  # Let preview instructions flush out to logger
  
      def _training(self) -> None:
          """ The training process to be run inside a thread. """
          try:
            sleep(0.5)  # Let preview instructions flush out to logger
              logger.debug("Commencing Training")
              logger.info("Loading data, this may take a while...")
              model = self._load_model()
              trainer = self._load_trainer(model)
              self._run_training_cycle(model, trainer)
keep keep keep keep replace keep keep keep keep keep
 Live Preview - Replace cv2 with matplotlib viewer 
scripts/train.py