--- license: apache-2.0 language: en tags: - industrial-inspection - metrology - crack-detection - segmentation - measurement pipeline_tag: image-segmentation --- # GaugeAnything — task heads for promptable quantitative inspection **Masks in, millimeters out.** These are the trained task heads of [GaugeAnything](https://github.com/falcons-eyes/GaugeAnything) — a promptable quantitative inspection pipeline for industrial micro-vision (SAM 3 backbone + metrology core). 🌐 Project page: https://falcons-eyes.github.io/GaugeAnything/ · 📊 All numbers below are audited (held-out splits, multi-seed where applicable, protocols in the repo). ## Checkpoints | File | Task | Audited result | Training data | Use | |---|---|---|---|---| | `profile_width_cnn.pt` | **1-D crack-width regression** from a 501-px brightness profile (the "signal for HOW WIDE" head) | table test MAE **≈18.6 μm** (~1 μm GPU run variance); end-to-end promptable **39.9 μm MAE / 23.2 μm median** (localization-gated) | krkCMd, 14,424 profiles (**CC BY 4.0** — license-clean) | ✅ commercial OK | | `gaugehead_tiny_width.pkl` | Tiny owned crack-width specialist over SAM-mask/image statistics | held-out source rel.err **0.472** vs 5-bin quantile 0.480 and old neural M2 0.564; worst source still 0.720 | CrackSeg9k M2 cache | ⚠️ research (subset licenses vary) | | `gaugehead_tiny_width_conformal.pkl` | GaugeHead-Tiny + 90% conformal interval (log cross-conformal; μ + σ-diagnostic + q) | keeps rel.err **0.4724** with per-source coverage **0.91/1.00/0.95** @90%; adaptive variants collapse on the worst source (0.21/0.11) — see repo `experiments/results/m2_uncertainty_conformal.json` | CrackSeg9k M2 cache | ⚠️ research (subset licenses vary) | | `m2_refiner.pt` | Measurement-aware crack mask refiner (UNet, 1.9M) | superseded baseline: a logit-threshold + quantile calibration beats it (0.437 vs 0.564 rel. err) — kept for reproducibility | CrackSeg9k train sources | ⚠️ research (subset licenses vary) | | `matte_fray_directional.pt` | Alpha matting head for fuzzy-boundary (fray) defects, directional synthesis v2 | real MT-fray preservation IoU **0.949** vs classical guided filter 0.860 | synthetic compositing over Magnetic-Tile free images | ⚠️ research (MT license unstated) | | `matte_fray.pt` | v1 (blob synthesis) — kept as the honest negative: real-transfer failure 0.483 | see repo progress logs | same | ⚠️ research | | `draem_uneven.pt` | DRAEM-lite reconstruction head for boundaryless (uneven/mura) defects | test AUC 0.636 (classical illumination-residual baseline: 0.669) | synthetic mura over Magnetic-Tile free images | ⚠️ research | The SAM 3 backbone is **not** redistributed here — get it at [facebook/sam3](https://huggingface.co/facebook/sam3) (separate license, gated). ## Usage (profile width head) ```python import torch, numpy as np ckpt = torch.load("profile_width_cnn.pt", map_location="cpu") # architecture: see experiments/krkcmd_signal_width.py::build_1d_net in the GitHub repo from gaugeanything_repo.experiments.krkcmd_signal_width import build_1d_net, norm_profile net = build_1d_net(); net.load_state_dict(ckpt["model"]); net.eval() profile = np.asarray(...) # 501 samples of image brightness across the crack x = torch.from_numpy(norm_profile(profile)).view(1, 1, -1) width_um = float(net(x)) # crack width in micrometers ``` Full pipeline (`prompt → SAM 3 localization → perpendicular profile → width`) lives in the [GitHub repo](https://github.com/falcons-eyes/GaugeAnything) — see `experiments/krkcmd_signal_width.py` and `docs/WIDTH_BOTTLENECK_ANALYSIS.md` for why width is read from the signal, not from mask geometry. ## Honest limitations - `profile_width_cnn` is trained on 6400-dpi scanner profiles of concrete (krkCMd); transfer to other resolutions/materials is **not yet validated** — scale-normalize inputs. - End-to-end accuracy is **localization-gated**: coverage 46–66% on the scanner domain; points failing the gate are reported as "not measurable", not guessed. - Heads marked *research* await upstream dataset license clarification before commercial use. ## Citation ```bibtex @misc{gaugeanything2026, title = {GaugeAnything: Promptable Quantitative Inspection for Industrial Micro-Vision}, author = {Joo, Hyunwoo}, year = {2026}, url = {https://github.com/falcons-eyes/GaugeAnything} } ```