Which defects can it detect?
Four registered models carry the numbers on this site, each with a model card:
- Crack segmentation: SegFormer-B5 (run crack_segformer_b5, 40 epochs), IoU 0.637 (held-out test, threshold 0.85)
- Corrosion severity: SegFormer-B2 (run corrosion_segformer_b2_cs, 80 epochs, log-inverse class weighting), Severe-pixel recall 0.788 (validation)
- Solar cell defects (electroluminescence): YOLO11l (run pvel_ad_yolo11l, 60 epochs), mAP50 0.8835 (validation)
- Solar thermal anomalies: ResNet18 (run solar_thermal_cls, 26 epochs, early-stopped), Balanced accuracy 0.724 (validation)
The registry also holds a structural damage detector (YOLO11x on CODEBRIM, mAP50 0.417) and others; their figures are in the feature registry.
Can I trust a finding?
Each finding keeps the model key, the SHA-256 of the weights that produced it, and its confidence; a reviewer’s decision is stored separately, so review never erases what the model said source. The installed weights are hashed at load and compared with the registry; a different file is reported as a mismatch source.
Every number names its split and the model’s known weakness. The crack model, for example, misses thin and faint cracks at its threshold, so an empty mask is not evidence of a sound surface.
What happens without a model?
It refuses, with a reason. A missing model or dependency never becomes a quietly worse answer, and a heuristic is never reported as AI. Corrosion severity has no heuristic fallback at all: colour rules can find rust, but nothing outside the training corpus separates poor from severe source.
Three models were trained and rejected rather than shipped; the model cards page lists them with their scores.
Related
Other parts of the pipeline: Mission planning · Flight over MAVLink · Photogrammetry · Measurements · Reports · Offline and private