# Commonforms Eval

> Evaluates an object detection model's ability to locate and classify form field widgets (text inputs, checkboxes/radio buttons, and signatures) on scanned or digital form pages. It probes sensitivity to input resolution and robustness across different languages and document domains. Use when the user wants to benchmark on CommonForms, or asks about evaluating this task. Reports mAP50-95.

- Skill: `qhjqhj00/commonforms-eval` (Agent Skill)
- Install (CLI): `npx skillmds add qhjqhj00/commonforms-eval`
- Raw SKILL.md: https://api.skillmd.com/api/skills/qhjqhj00/commonforms-eval/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: qhjqhj00 (https://skillmd.com/u/qhjqhj00)
- Updated: 2026-09-08
- Page: https://skillmd.com/skills/qhjqhj00/commonforms-eval

---


# commonforms-eval

> CommonForms: A Large, Diverse Dataset for Form Field Detection — Barrow et al. (2025) (arXiv:2509.16506, 2025)

## What this evaluates

Evaluates an object detection model's ability to locate and classify form field widgets (text inputs, checkboxes/radio buttons, and signatures) on scanned or digital form pages. It probes sensitivity to input resolution and robustness across different languages and document domains.

## Datasets

- **CommonForms** — total 480000; splits: test (-1); repo https://github.com/jbarrow/commonforms

## Metrics

- `mAP50-95` **(primary)** — range: percent
  - Mean Average Precision computed across IoU thresholds from 0.50 to 0.95 in 0.05 increments. Per-class AP is also reported for Text, Choice (checkboxes/radio buttons), and Signature fields.

## Input / output format

**Input**: High-resolution rasterized form page images (e.g., 1216px width/height, or 640/960/1536px for ablation studies).

**Output**: Bounding box coordinates and class labels for detected form fields (Text, Choice, Signature).

## Scoring recipe

```python
def compute_mAP(predictions, ground_truth, iou_thresholds=np.arange(0.50, 0.96, 0.05)):
    aps = []
    for iou in iou_thresholds:
        # Match predictions to GT based on IoU >= iou
        # Compute precision-recall curve and average AP
        aps.append(calculate_ap(predictions, ground_truth, iou))
    return np.mean(aps) * 100  # Reported as percentage
```

## Common pitfalls

- Form fields are fine-grained; using low-resolution inputs (e.g., 640px) drastically reduces performance (~20 point drop) compared to high-resolution (1216px+).
- Choice Buttons (checkboxes/radio buttons) and Signatures are particularly resolution-sensitive and often missed by commercial tools or low-res models.
- Aggressive data filtering improves detection efficiency (+4 AP) but reduces the total training pool, requiring careful trade-off analysis.

## Evidence (verbatim from paper)

> All results are reported as $mAP_{50-95}$. Results are reported on the CommonForms test set, so are directly comparable with all other results reported in the paper.

## Citation

```bibtex
@misc{barrow2025commonforms,
  title={CommonForms: A Large, Diverse Dataset for Form Field Detection},
  author={Barrow et al. (2025)},
  year={2025},
  note={arXiv:2509.16506}
}
```

- arXiv: 2509.16506

