{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://www.imatest.com/schema/25-1/straylight-settings-mask-image-processing",
  "title": "Mask Settings: Image Processing",
  "description": "The user-provided source masking settings for the image processing method.",
  "type": "object",
  "properties": {
    "level_threshold_type": {
      "description": "The user-provided level threshold type.",
      "type": "string",
      "enum": [
        "Value",
        "Percentage of Max",
        "Otsu's Method"
      ]
    },
    "level_threshold_value_DN": {
      "description": "The user-provided level threshold in digital numbers.",
      "type": "number"
    },
    "level_threshold_percent": {
      "description": "The user-provided level threshold as a percent of the maximum value.",
      "type": "number"
    },
    "minimum_source_level_DN": {
      "description": "The user-provided minimum level considered to be the image of the source.",
      "type": "integer"
    },
    "image_close_radius_px": {
      "description": "The user-provided image closing radius in pixels.",
      "type": "integer"
    },
    "multiple_cc_strategy": {
      "description": "The user-provided strategy for dealing with multiple connected components.",
      "type": "string",
      "enum": [
        "Don't Mask",
        "Pick Biggest",
        "Pick Smallest"
      ]
    },
    "mask_area_threshold_px": {
      "description": "The user-provided minimum area of a connected component.",
      "type": "number"
    }
  },
  "required": [
    "level_threshold_type",
    "minimum_source_level_DN",
    "image_close_radius_px",
    "multiple_cc_strategy",
    "mask_area_threshold_px"
  ],
  "unevaluatedProperties": false
}