{ "default_mode": "document", "modes": { "none": { "description": "No preprocessing (passthrough)", "deskew": false, "clahe": false, "binarize": false, "gamma_correction": false, "sharpen": false, "grayscale": false, "target_size": null }, "auto": { "description": "Inspect image and apply needed fixes automatically", "deskew": true, "clahe": "auto", "binarize": false, "gamma_correction": "auto", "sharpen": "auto", "grayscale": false, "target_size": 1024 }, "document": { "description": "Deskew + CLAHE contrast enhancement (default for general documents)", "deskew": true, "clahe": true, "binarize": false, "gamma_correction": false, "sharpen": false, "grayscale": false, "target_size": 1024, "clahe_clip_limit": 2.0, "clahe_grid_size": 8 }, "low-contrast": { "description": "Aggressive CLAHE + gamma correction for faded scans", "deskew": true, "clahe": true, "binarize": false, "gamma_correction": true, "sharpen": false, "grayscale": false, "target_size": 1024, "clahe_clip_limit": 4.0, "gamma_value": 1.5 }, "grayscale": { "description": "Convert to grayscale + Otsu binarization", "deskew": true, "clahe": false, "binarize": true, "gamma_correction": false, "sharpen": false, "grayscale": true, "target_size": 1024 }, "high-resolution": { "description": "Resize longest side to 1024 with Lanczos + sharpen", "deskew": false, "clahe": true, "binarize": false, "gamma_correction": false, "sharpen": true, "grayscale": false, "target_size": 1024 }, "table": { "description": "Deskew + CLAHE + sharpening for grid lines and table structure", "deskew": true, "clahe": true, "binarize": false, "gamma_correction": false, "sharpen": true, "grayscale": false, "target_size": 1024, "clahe_clip_limit": 3.0 }, "adaptive-binarize": { "description": "Detect sideways orientation and apply local Sauvola binarization", "deskew": true, "clahe": false, "binarize": "sauvola", "gamma_correction": false, "sharpen": false, "grayscale": false, "target_size": 1024 }, "photo-document": { "description": "Perspective-correct photographed pages, detect sideways orientation, then enhance contrast and lighting", "deskew": false, "perspective_correction": true, "clahe": true, "binarize": false, "gamma_correction": true, "sharpen": false, "grayscale": false, "target_size": 1024, "clahe_clip_limit": 3.0, "gamma_value": 1.3 } }, "_note": "Preprocessing is always optional. The raw input path remains available for baseline comparison. Applied steps are recorded in output metadata." }