OpenDroneKit

Model cards

The four registered models behind OpenDroneKit's headline numbers. Each card gives the metric with its split, the data it learned from, what it gets wrong, and what it does when it cannot answer.

Updated 2026-10-02Checked against main@1ef6351

Registered models

The registry also lists structural, rail and land-cover models; their figures are in docs/features/registry.py. These four are the ones whose numbers appear on this site.

Rejected models

Trained, measured, and not shipped. The reasons are kept in the repository rather than the runs being deleted.

  • RGB solar panel-condition detector (Clear/Dusty/Damage/Snow): mAP50 0.318; Dusty class 0.073. Dusty, the class Indian sites most need, was its worst class. Deliberately not registered: soiling looks like a radiometric comparison problem rather than a detection one. source
  • Single-class corrosion detector (YOLO11l, 498 images): mAP50 0.254, recall 0.257. Three corrosion sites in four went unfound. Rejected rather than registered and replaced by severity segmentation. source
  • Mine change detection: IoU 0.295 on about 15 held-out mines. 60 per cent of its flags were wrong; out of v1 scope by decision. source

How the numbers are kept honest

  • A number appears only with the split it was measured on.
  • Each registry entry names the model’s known weakness; the cards repeat it next to the number.
  • The weights’ SHA-256 is recorded, and a different installed file is reported as a mismatch.
  • A missing model produces a refusal with a reason, never a heuristic reported as AI.