CVproject β€” Drone Detection Weights

Fine-tuned YOLO model for drone detection. Used in the CVproject repository for stereo tracking and 3D trajectory reconstruction.

Training

  • Base model: best.pt (continued training from previous doguilmak weights)
  • Dataset: custom, single class β€” drone
  • Epochs: 50 (training completed, early stopping did not trigger β€” patience=100)
  • Image size: 640
  • Batch: 8
  • Optimizer: auto (selected by Ultralytics)
  • LR0 / LRF: 0.01 / 0.01
  • Momentum: 0.937
  • Weight decay: 0.0005
  • Warmup epochs: 3.0
  • Amp: enabled (amp: true)
  • Device: auto (effectively GPU; total training time ~1360 s)
  • Seed: 0, deterministic: true

Metrics (validation, epoch 50)

Metric Value
Precision (B) 0.9335
Recall (B) 0.9286
mAP@50 (B) 0.9640
mAP@50-95 (B) 0.5916

Losses on the final epoch:

Loss Train Val
box_loss 0.9916 1.4363
cls_loss 0.5046 0.6149
dfl_loss 1.0960 1.3429

Best values during training:

  • mAP@50 β‰ˆ 0.9664 (epoch 36)
  • mAP@50-95 β‰ˆ 0.5916 (epoch 50)
  • Precision β‰ˆ 0.9669 (epoch 33)
  • Recall β‰ˆ 0.9396 (epoch 36)

Training Curves

Loss and metric dynamics across epochs:

results

Usage

from ultralytics import YOLO

model = YOLO("best.pt")
results = model("image.jpg", conf=0.25)

# Or on video / stream
results = model.predict(source=0, conf=0.25, stream=True)
for r in results:
    boxes = r.boxes
    for box in boxes:
        x1, y1, x2, y2 = box.xyxy[0].tolist()
        conf = float(box.conf[0])
        cls = int(box.cls[0])
        print(f"drone: {conf:.2f} @ ({x1:.0f},{y1:.0f},{x2:.0f},{y2:.0f})")
Downloads last month
6
Inference Providers NEW
This model isn't deployed by any Inference Provider. πŸ™‹ Ask for provider support