Сглаживание с фильтром Калмана
Я тестирую библиотеку Калмана и не знаю, как настроить сглаживание фильтра: отслеживая синусоидальное движение Я получаю измерения состояния, в том числе ошибки из-за шумных измерений. Пожалуйста, посмотрите на изображение отслеживания. Track In Blue, оригинальный трек. В зеленом трек вкл. ошибки в расчете местоположения (использовались фитинги с наименьшим квадратом, чтобы найти минимальную ошибку) в красном, я тестирую фильтрацию Пикальмана для сглаживания дорожки.
текущее состояние
Запустив kf.filter, я получаю очень близкое отслеживание без сглаживания. Почему фильтр становится так близко к состоянию? Как я могу изменить время окна?
kf = KalmanFilter(transition_matrices = F, observation_matrices =H, transition_covariance=Q )
(filtered_state_means, filtered_state_covariances) = kf.filter(track_smooth)
F (9,9) матрица включает в себя положение, скорость и ускорение для 3 осей
F=np.array([
[1,1,.5,0,0,0,0,0,0],
[0,1,1,0,0,0,0,0,0],
[0,0,1,0,0,0,0,0,0],
[0,0,0,1,1,.5,0,0,0],
[0,0,0,0,1,1,0,0,0],
H - np.eye, а Q - np.eye(9)*4, дисперсия состояний x,y,z