anomaly_eval op• Data kinds: video × video → table
• Call: import fullseye as fs; fs.ledger.anomaly_pro(scores, masks, fpr_max=0.3) (to call the implementation directly, import anomeval; anomeval.anomaly_pro(scores, masks, fpr_max=0.3); from the registry, opsspc.get("anomaly_pro"))
Per-region overlap (PRO) curve and its normalised area AUPRO up to fpr_max (table).
Definition (Bergmann et al., CVPR 2020): at a threshold t, every 8-connected defect region C of every mask scores |{score >= t} ∩ C| / |C|; PRO(t) is the mean over all regions, so a small defect weighs as much as a large one. FPR(t) is the fraction of all good pixels with score >= t. The curve is evaluated exactly at every distinct score (sorted cumulative sums, no threshold grid), starts at (0, 0), is integrated by the trapezoid rule up to fpr_max (the customary 0.3; linear interpolation at the cut) and divided by fpr_max → aupro in [0, 1]. Returns aupro, fpr / pro (the curve up to the cut), n_regions, fpr_max.
Raises ValueError on empty / mismatched / non-finite input, non-binary masks, no defect region, no good pixel, or fpr_max outside (0, 1].
• Sample-data catalog (download URLs / licences) — 2-D uses skimage.data (BSD/public domain) plus synthetic images; 3-D lists download URLs for real data sources (Stanford, PDS, …).
• Operator provenance and references — the sources of the research/methods this op family came from.
• The canonical algorithm (author, year) and its uses are named in the family usage guide above.
• anomaly_eval_metrics — py -3.11 examples/anomaly_eval_metrics.py
• poc_good_sample_variation_model — py -3.11 examples/poc_good_sample_variation_model.py
• poc_patch_anomaly — py -3.11 examples/poc_patch_anomaly.py
table as input)msa_anova_table · msa_gauge_rr · msa_bias_linearity · msa_attribute_agreement · gum_standard_uncertainty · gum_propagate · gum_expanded · gum_monte_carlo
anomaly_eval)anomaly_image_auroc · anomaly_pixel_auroc · anomaly_region_overlap · anomaly_pixel_f1_max · anomaly_image_f1_max · anomaly_operating_point
*Provenance: anomeval.py — SPC operator registry. This per-op note is generated by tools/opdocs.py md (do not hand-edit).*
© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.