diff --git a/utils/ocr_preprocessor.py b/utils/ocr_preprocessor.py index 5440d8c..1062741 100644 --- a/utils/ocr_preprocessor.py +++ b/utils/ocr_preprocessor.py @@ -63,8 +63,12 @@ PREPROCESSING_PROFILES = { def preprocess_image(image_path: str, **settings) -> Image.Image: img = Image.open(image_path).convert("RGB") base_name = os.path.basename(image_path) + + # Gestion des dossiers de debug debug_dir = settings.get("debug_output_dir", "debug_ocr_preprocessed") - os.makedirs(debug_dir, exist_ok=True) + profile_name = settings.get("profile_name", "default") # Ajout du nom du profil + debug_profile_dir = os.path.join(debug_dir, profile_name) + os.makedirs(debug_profile_dir, exist_ok=True) # Redimensionnement if settings.get("resize_min_dim", 0) > 0: @@ -115,11 +119,12 @@ def preprocess_image(image_path: str, **settings) -> Image.Image: # Sauvegarde image prétraitée (debug) if settings.get("save_debug_output", False): - debug_path = os.path.join(debug_dir, f"optimized_{base_name}") + debug_path = os.path.join(debug_profile_dir, f"optimized_{base_name}") cv2.imwrite(debug_path, img_cv) return Image.fromarray(cv2.cvtColor(img_cv, cv2.COLOR_BGR2RGB)) def preprocess_image_with_profile(image_path: str, profile_name="default") -> Image.Image: - settings = PREPROCESSING_PROFILES[profile_name] + settings = PREPROCESSING_PROFILES[profile_name].copy() # On fait une copie pour ne pas modifier l'original + settings["profile_name"] = profile_name # On ajoute le nom du profil aux paramètres return preprocess_image(image_path, **settings)