Skip to main content

Defect detection on photos

The defect-detection model scans field photos and returns bounding boxes around detected defects: cracks, corrosion, exposed rebar, vegetation encroachment, surface damage. It runs on YOLOv8n, ONNX-exported, in the local AI worker (no cloud GPU required for this model).

Current accuracy: mAP50 0.541 on a mixed field-photo corpus. Tier: Live for the cracks / corrosion / vegetation classes.

Run defect detection on a survey​

  1. Open the survey containing the photos.
  2. Click the Defects tab.
  3. Click Run defect detection.
  4. The estimated credit cost appears (1 credit per ~10 MP of imagery). Confirm.

The job runs asynchronously. When complete, the photos in the survey show coloured boxes around detected defects.

Run on a single photo​

If you only want to test one photo:

  1. Open the photo in the survey viewer.
  2. Click the AI icon.
  3. Pick Detect defects.
  4. Confirm credit cost.

Results appear inline on the photo.

Read the result​

Each detection has:

  • A class label (crack / corrosion / vegetation / etc.).
  • A confidence score between 0 and 1 (the model's certainty).
  • A bounding box drawn on the photo.

Hover any box for class + confidence. Click a box to open the detection in the detail pane.

By default, the viewer shows detections with confidence ≥ 0.4. Use the Confidence threshold slider to show more or fewer.

Accept or reject a detection​

Each detection in the detail pane has Accept / Reject controls:

  • Accept: marks the detection as correct. Optionally promote it to a feature in your asset register (creates a row in the relevant feature class, e.g. a "bridge defect" feature with the photo and coordinates attached).
  • Reject: marks the detection as a false positive. Optionally add a one-line reason ("not a crack — it's a paint line").

Accept / reject feedback is logged per-detection. After enough feedback accumulates, the model fine-tunes on your data and becomes more accurate for your specific assets.

Promote a detection to a work order​

If a detection warrants a follow-up inspection or repair:

  1. Open the detection.
  2. Click Create work order.
  3. The work order is pre-populated with the photo, coordinates, and the detection's class + confidence.
  4. Pick assignee, priority, due date.
  5. Click Save.

The work order appears in the assignee's queue.

Limitations​

  • The model was trained on outdoor structural assets in temperate climates. Performance on indoor inspections, painted surfaces with deliberate markings, and water-immersed assets is lower.
  • Detection of fine cracks (< 1 mm) depends heavily on photo resolution and lighting. Re-shoot in better conditions if confidence is consistently low.
  • The model does not classify defect severity. Severity is something a human inspector adds in the form attached to the detection.

If your vertical needs a defect class that is not in the current model, talk to us about a fine-tune.

Roadmap​

We are working on raising mAP50 from 0.541 to 0.65+ with a larger backbone and more training data. Per-vertical fine-tunes on customer accept / reject feedback are the production path beyond the public-corpus baseline.

What next?​