### Metric

Submissions are evaluated using **Mean Absolute Error (MAE)** between your submission scores and perfect scores (1.0).

Each of your corrected test images is scored against hidden ground truth using a multi-metric evaluation that combines:

| Metric | Weight | What It Measures |
|---|---|---|
| Edge Similarity | 40% | Multi-scale Canny edge F1 score |
| Line Straightness | 22% | Hough line angle distribution match |
| Gradient Orientation | 18% | Gradient direction histogram similarity |
| SSIM | 15% | Structural similarity index |
| Pixel Accuracy | 5% | Mean absolute pixel difference |

Each image receives a score from 0.0 (completely wrong) to 1.0 (perfect match). Your submission CSV contains these per-image scores. Kaggle computes the MAE against a solution file where all scores are 1.0.

**Lower MAE = better.** A perfect correction scores MAE = 0.0.

#### Hard Fail Conditions

An image scores 0.0 automatically if:
- Maximum regional difference exceeds threshold (catastrophic local error)
- Edge similarity is below minimum (structurally broken output)

### How to Submit

1. Correct all test images using your model/algorithm
2. Upload your corrected images (as a zip) to the **scoring service** — https://bounty.autohdr.com
3. The scoring service returns a `submission.csv` with your per-image scores
4. Download the CSV and submit it here on Kaggle

### Submission File Format

Your `submission.csv` must contain a header and two columns:

```
image_id,score
08084abe-e9be-4277-8aa1-e1d910312a58_g0,0.9729
10ab83b0-c13a-4b7c-a08e-2d8b2e250a7e_g0,0.9748
...
```

**Note:** You do not compute the scores yourself. The scoring service generates this CSV for you. Just download and submit it.