[v2] About Config - Udayraj123/OMRChecker GitHub Wiki

Config schema

OMRChecker config schema for custom tuning

{
    "title": "Config Schema",
    "description": "OMRChecker config schema for custom tuning",
    "thresholding": {
        "description": "The values used in the core algorithm of OMRChecker",
        "MIN_GAP_TWO_BUBBLES": {
            "description": "Minimum difference between all mean values of the bubbles. Used for local thresholding of 2 or 1 bubbles",
        },
        "MIN_JUMP": {
            "description": "Minimum difference between consecutive elements to be consider as a jump in a sorted array of mean values of the bubbles",
        },
        "MIN_JUMP_STD": {
            "description": "The MIN_JUMP for the standard deviation plot",
        },
        "MIN_JUMP_SURPLUS_FOR_GLOBAL_FALLBACK": {
            "description": "This value is added to jump value, underconfident bubbles fallback to global_threshold_for_template",
        },
        "GLOBAL_THRESHOLD_MARGIN": {
            "description": 'This value determines if the calculated global threshold is "too close" to lower bubbles in confidence metrics',
        },
        "JUMP_DELTA": {
            "description": "Note: JUMP_DELTA is deprecated, used only in plots currently to determine a stricter threshold",
        },
        "JUMP_DELTA_STD": {
            "description": "JUMP_DELTA_STD is the minimum delta to be considered as a jump in the std plot",
        },
        "CONFIDENT_JUMP_SURPLUS_FOR_DISPARITY": {
            "description": "This value is added to jump value to distinguish safe detections vs underconfident detections",
        },
        "GLOBAL_PAGE_THRESHOLD": {
            "description": "This option decides the starting value to use before applying local outlier threshold",
        },
        "GLOBAL_PAGE_THRESHOLD_STD": {
            "description": "This option decides the starting value to use for standard deviation threshold which determines outliers",
        },
        "GAMMA_LOW": {
            "description": "Used in the CropOnDotLines processor to create a darker image for enhanced line detection (darker boxes)",
        },
    },
    "outputs": {
        "description": "The configuration related to the outputs generated by OMRChecker",

        "display_image_dimensions": {
            "description": "The dimensions (width, height) for images displayed during the execution",
        },
        "show_logs_by_type": {
            "description": "The toggles for enabling logs per level",
            "properties": {
                "critical": true,
                "error": true,
                "warning": true,
                "info": true,
                "debug": true,
            },
        },
        "show_image_level": {
            "description": "The toggle level for showing debug images (higher means more debug images)",
        },
        "save_image_level": {
            "description": "The toggle level for saving debug images (higher means more debug images)",
        },
        "colored_outputs_enabled": {
            "description": "This option shows colored outputs while taking a small toll on the processing speeds. Disable this option to slightly improve the speed",
        },
        "save_detections": {
            "description": "This option saves the detection outputs while taking a small toll on the processing speeds",
        },
        "save_image_metrics": {
            "description": "This option exports the confidence metrics etc related to the images. These can be later used for deeper analysis/visualizations",
        },
        "filter_out_multimarked_files": {
            "description": "This option moves files having multi-marked responses into a separate folder for manual checking, skipping evaluation",
        },
        "show_preprocessors_diff": {
            "description": "This option shows a preview of the processed image for every preprocessor. Also granular at preprocessor level using a map",
            "properties": {
                "CropOnMarkers": true,
                "CropPage": true,
                "FeatureBasedAlignment": true,
                "GaussianBlur": true,
                "Levels": true,
                "MedianBlur": true,
                "AutoAlign": true,
            },
        },
    },
}