Argus YOLOv12 Crack β€” Pretrained Weights

This repository hosts the pretrained weights for Argus YOLOv12 Crack, an undergraduate-thesis-stage research project on wall crack detection.

Recommended configuration: YOLOv12n + EMA(P3+P4, factor=16).

Code, training configs, reproduction guide, and Web demo: https://github.com/Shallow-dusty/Argus-YOLOv12-Crack

Layout

.
β”œβ”€β”€ kaggle/                # Paper-headline recommended weights (Kaggle P100, n=3)
β”‚   β”œβ”€β”€ ema-p34-factor16-seed0.pt
β”‚   β”œβ”€β”€ ema-p34-factor16-seed1.pt
β”‚   └── ema-p34-factor16-seed43.pt
β”œβ”€β”€ 3070/                  # Cross-platform check (RTX 3070 Laptop, n=3)
β”‚   β”œβ”€β”€ ema-p34-factor16-seed0.pt
β”‚   β”œβ”€β”€ ema-p34-factor16-seed1.pt
β”‚   └── ema-p34-factor16-seed43.pt
β”œβ”€β”€ cross-domain/          # T6 cross-domain pressure test (single seed each)
β”‚   β”œβ”€β”€ ema-p34-factor16-crack500.pt
β”‚   └── ema-p34-factor16-deepcrack.pt
└── baseline/              # YOLOv12n baseline (no attention) for reference
    β”œβ”€β”€ yolov12n-baseline-kaggle.pt
    └── yolov12n-baseline-3070-seed0.pt

Headline numbers

Primary dataset: wall_crack_v2_split (2366 / 295 / 297, single class crack, CC BY 4.0).

Setting Configuration mAP50
Recommended Β· Kaggle n=3 mean Β± std YOLOv12n + EMA(P3+P4, factor=16) 0.73070 Β± 0.00672
Recommended Β· RTX 3070 n=3 mean Β± std same 0.73689 Β± 0.00400
Baseline YOLOv12n baseline 0.70561

Full data: see docs/COMPARISON_TABLE.md in the GitHub repo.

Quick load (Ultralytics)

from huggingface_hub import hf_hub_download
from ultralytics import YOLO

weights = hf_hub_download(
    repo_id="ShallowDusty/argus-yolov12-crack",
    filename="kaggle/ema-p34-factor16-seed0.pt",
)
model = YOLO(weights)
results = model.predict("path/to/your/wall_image.jpg")

Training recipe (summary)

  • Backbone: YOLOv12n + EMA attention inserted at P3 + P4
  • EMA factor (channel grouping divisor): 16
  • Epochs: 200 with patience=50 early stopping
  • Image size: 640
  • Optimizer: SGD, lr0=0.01, momentum=0.937, weight_decay=5e-4
  • Batch: 16 (Kaggle P100) / 32 (RTX 3070 Laptop)
  • Framework: ultralytics 8.4.21, torch 2.6.0

Full configs: configs/ema-p34-factor16.yaml and the auto-resolved data.yaml produced by src/train.py.

Limitations

  • Single-class wall-crack dataset (< 3000 images); +2~+3 pp mAP50 over baseline.
  • T6 cross-domain rankings (crack500, deepcrack) are unstable and do not establish EMA superiority across datasets.
  • Inference latency / deployment optimization (TensorRT, quantization) are out of scope.

Citation

@software{argus_yolov12_crack_2026,
  author  = {Shallow},
  title   = {{Argus YOLOv12 Crack: Wall Crack Detection with YOLOv12n + EMA Attention}},
  year    = {2026},
  url     = {https://github.com/Shallow-dusty/Argus-YOLOv12-Crack},
  license = {MIT}
}

License

MIT License Β© 2026 Shallow.

Downloads last month
307
Inference Providers NEW
This model isn't deployed by any Inference Provider. πŸ™‹ Ask for provider support