From 07ce077dec443927eb695931d0c1f6a10dc63cca Mon Sep 17 00:00:00 2001 From: AuroraWright Date: Thu, 23 Oct 2025 13:45:27 +0200 Subject: [PATCH] Separate engine names from config entries --- owocr/config.py | 2 +- owocr/ocr.py | 13 +++++++++++++ owocr/run.py | 6 +++--- owocr_config.ini | 5 ----- 4 files changed, 17 insertions(+), 9 deletions(-) diff --git a/owocr/config.py b/owocr/config.py index 6454ef6..f7efe5f 100644 --- a/owocr/config.py +++ b/owocr/config.py @@ -173,6 +173,6 @@ class Config: try: return self.__engine_config[value] except KeyError: - return None + return {} config = Config() diff --git a/owocr/ocr.py b/owocr/ocr.py index 4829b27..7928b4e 100644 --- a/owocr/ocr.py +++ b/owocr/ocr.py @@ -380,6 +380,7 @@ class MangaOcrSegmented: name = 'mangaocrs' readable_name = 'Manga OCR (segmented)' key = 'n' + config_entry = 'mangaocr' available = False local = True manual_language = False @@ -559,6 +560,7 @@ class MangaOcr: name = 'mangaocr' readable_name = 'Manga OCR' key = 'm' + config_entry = 'mangaocr' available = False local = True manual_language = False @@ -590,6 +592,7 @@ class GoogleVision: name = 'gvision' readable_name = 'Google Vision' key = 'g' + config_entry = None available = False local = False manual_language = False @@ -727,6 +730,7 @@ class GoogleLens: name = 'glens' readable_name = 'Google Lens' key = 'l' + config_entry = None available = False local = False manual_language = False @@ -875,6 +879,7 @@ class Bing: name = 'bing' readable_name = 'Bing' key = 'b' + config_entry = None available = False local = False manual_language = False @@ -1047,6 +1052,7 @@ class AppleVision: name = 'avision' readable_name = 'Apple Vision' key = 'a' + config_entry = 'avision' available = False local = True manual_language = True @@ -1138,6 +1144,7 @@ class AppleLiveText: name = 'alivetext' readable_name = 'Apple Live Text' key = 'd' + config_entry = None available = False local = True manual_language = True @@ -1265,6 +1272,7 @@ class WinRTOCR: name = 'winrtocr' readable_name = 'WinRT OCR' key = 'w' + config_entry = 'winrtocr' available = False local = True manual_language = True @@ -1373,6 +1381,7 @@ class OneOCR: name = 'oneocr' readable_name = 'OneOCR' key = 'z' + config_entry = 'oneocr' available = False local = True manual_language = False @@ -1502,6 +1511,7 @@ class AzureImageAnalysis: name = 'azure' readable_name = 'Azure Image Analysis' key = 'v' + config_entry = 'azure' available = False local = False manual_language = False @@ -1603,6 +1613,7 @@ class EasyOCR: name = 'easyocr' readable_name = 'EasyOCR' key = 'e' + config_entry = 'easyocr' available = False local = True manual_language = True @@ -1672,6 +1683,7 @@ class RapidOCR: name = 'rapidocr' readable_name = 'RapidOCR' key = 'r' + config_entry = 'rapidocr' available = False local = True manual_language = True @@ -1767,6 +1779,7 @@ class OCRSpace: name = 'ocrspace' readable_name = 'OCRSpace' key = 'o' + config_entry = 'ocrspace' available = False local = False manual_language = True diff --git a/owocr/run.py b/owocr/run.py index c82ccd0..4a0b524 100644 --- a/owocr/run.py +++ b/owocr/run.py @@ -1684,16 +1684,16 @@ def run(): logger.warning(f"Skipping {engine_class.readable_name} as it does not support JSON output") continue - if config.get_engine(engine_class.name) == None: + if not engine_class.config_entry: if engine_class.manual_language: engine_instance = engine_class(language=language) else: engine_instance = engine_class() else: if engine_class.manual_language: - engine_instance = engine_class(config=config.get_engine(engine_class.name), language=language) + engine_instance = engine_class(config=config.get_engine(engine_class.config_entry), language=language) else: - engine_instance = engine_class(config=config.get_engine(engine_class.name)) + engine_instance = engine_class(config=config.get_engine(engine_class.config_entry)) if engine_instance.available: engine_instances.append(engine_instance) diff --git a/owocr_config.ini b/owocr_config.ini index 12ca863..deb1ed1 100644 --- a/owocr_config.ini +++ b/owocr_config.ini @@ -147,11 +147,6 @@ ;force_cpu = False -;[mangaocrs] -;pretrained_model_name_or_path = kha-white/manga-ocr-base - -;force_cpu = False - ;[easyocr] ;gpu = True