File size: 344 Bytes
5494420
 
 
 
 
 
 
 
 
aad2f00
1
2
3
4
5
6
7
8
9
10
import numpy as np

def estimate_speed(points, fps=30, scale_px_per_meter=100):
    if len(points) < 2:
        return 0
    (x0, y0), (x1, y1) = points[0], points[-1]
    distance = np.linalg.norm(np.array([x1, y1]) - np.array([x0, y0])) / scale_px_per_meter
    time_sec = len(points) / fps
    return (distance / time_sec) * 3.6  # km/h