40 lines
1.1 KiB
Python
40 lines
1.1 KiB
Python
import os
|
|
from cv_analysis.config import CONFIG
|
|
from cv_analysis.utils.display import save_mpl
|
|
|
|
|
|
class VisualLogger:
|
|
def __init__(self, level, output_folder):
|
|
self.level = level
|
|
self.output_folder = output_folder
|
|
if not os.path.exists(self.output_folder):
|
|
os.mkdir(self.output_folder)
|
|
|
|
def _save(self, img, name):
|
|
output_path = os.path.join(self.output_folder, name)
|
|
save_mpl(img, output_path)
|
|
|
|
def info(self, img, name):
|
|
if self._level_is_info():
|
|
self._save(img, name)
|
|
|
|
def debug(self, img, name):
|
|
if self._level_is_debug():
|
|
self._save(img, name)
|
|
|
|
def all(self, img, name):
|
|
if self._level_is_debug():
|
|
self._save(img, name)
|
|
|
|
def _level_is_info(self):
|
|
return self.level in {"INFO", "DEBUG", "ALL"}
|
|
|
|
def _level_is_debug(self):
|
|
return self.level in {"DEBUG", "ALL"}
|
|
|
|
def _level_is_all(self):
|
|
return self.level == "ALL"
|
|
|
|
|
|
vizlogger = VisualLogger(CONFIG.visual_logging.level, CONFIG.visual_logging.output_folder)
|