Spaces:
Runtime error
Runtime error
| import numpy as np | |
| from filterpy.kalman import KalmanFilter | |
| class BallTracker: | |
| def __init__(self): | |
| self.kf = KalmanFilter(dim_x=4, dim_z=2) | |
| self.kf.F = np.array([[1,0,1,0], [0,1,0,1], [0,0,1,0], [0,0,0,1]]) | |
| self.kf.H = np.array([[1,0,0,0], [0,1,0,0]]) | |
| self.kf.P *= 10. | |
| self.kf.R *= 0.5 | |
| self.kf.Q *= 0.01 | |
| self.initialized = False | |
| def update(self, measurement): | |
| if not self.initialized: | |
| self.kf.x[:2] = np.array([[measurement[0]], [measurement[1]]]) | |
| self.initialized = True | |
| self.kf.predict() | |
| self.kf.update(measurement) | |
| return self.kf.x[:2].flatten() | |