perp-cnn โ€” Bowtip Detection

Detects the bow tip of boats in photofinish images. Used in perp_web for automated boat race timing.

Usage

import numpy as np
from perp_cnn import predict

image: np.ndarray = ...  # Hร—Wร—3, BGR or RGB
results = predict(image)

for box in results[0].boxes:
    x1, y1, x2, y2 = map(int, box.xyxy[0])
    conf = float(box.conf[0])

Or install as a Git dependency via Poetry:

perp-cnn = { git = "https://github.com/tillsc/perp_cnn.git" }

Model

  • Architecture: YOLO11n
  • Input: arbitrary image size (resized to 640px internally)
  • Output: bounding boxes for class bowtip
  • Training data: photofinish images from rowing races

Performance

Precision 100%
Recall 97.9%
Box accuracy (mAP50) 99.5%
Box precision (mAP50-95) 74.6%
CPU inference ~19ms / ~52 FPS

Training Notes

  • No horizontal or vertical flips (boat orientation matters)
  • No rotation or perspective warp
  • Slight translation and scaling augmentation
Downloads last month
81
Inference Providers NEW
This model isn't deployed by any Inference Provider. ๐Ÿ™‹ Ask for provider support