diff --git a/labelme/widgets/canvas.py b/labelme/widgets/canvas.py index 660d857f7..5c6cb78b8 100644 --- a/labelme/widgets/canvas.py +++ b/labelme/widgets/canvas.py @@ -1,3 +1,5 @@ +import contextlib + import imgviz from loguru import logger from qtpy import QtCore @@ -137,7 +139,18 @@ def initializeAiModel(self, name): logger.debug("AI model is already initialized: %r" % model.name) else: logger.debug("Initializing AI model: %r" % model.name) - self._ai_model = model() + + class LoggerIO: + def write(self, message: str): + if message := message.strip(): + logger.debug(message) + + def flush(self): + pass + + # NOTE: gdown.download uses sys.stderr, so redirect it to logger.debug + with contextlib.redirect_stderr(new_target=LoggerIO()): + self._ai_model = model() if self.pixmap is None: logger.warning("Pixmap is not set yet")