webzuweb
@webzuweb
Менеджер очень среднего звена

Что такое transition_matrices и observation_matrix в фильтре Калмана?

Что такое transition_matrices и observation_matrix в фильтре Калмана?
measurements = np.asarray(massgps)
		initial_state_mean = [measurements[0, 0],0,measurements[0, 1],0]
		transition_matrix = [[1, 1, 0, 0],[0, 1, 0, 0],[0, 0, 1, 1],[0, 0, 0, 1]]
		observation_matrix = [[1, 0, 0, 0],[0, 0, 1, 0]]
		kf1 = KalmanFilter(transition_matrices = transition_matrix,observation_matrices = observation_matrix,initial_state_mean = initial_state_mean)
		kf1 = kf1.em(measurements, n_iter=5)
		(smoothed_state_means, smoothed_state_covariances) = kf1.smooth(measurements)


Есть список с последними 5 координатами GPS
Как вписать модель движения робота в transition_matrix, если скорость относительно прежней не изменилась, увеличилась или стала нулем?
Как вписать модель движения ровера, если мы точно не значем как относительно осей широты и долготы меняются его координаты?
  • Вопрос задан
  • 189 просмотров
Пригласить эксперта
Ответы на вопрос 1
@kahi4
Возьмем это изображение с вики

afc2ebd9c4ce2b3a537a491199af6e2e9a988e6c(Сама статья)

Это матричная запись уравнения движения. Transition matrix и есть этот самый Fk, т.е. матрица перехода, которая связывает предыдущий вектор состояния x_k-1 и текущий x_k.

Например, для системы диф. уравнений:
v1 = 3 * x1 + 0.1 * x2
v2 = 0.3 * x1 + 0.5 * x2

Переходная матрица будет составлять [[3, 0,1], [0.3][0.5]], где v1, v2 есть первые производные для x1 и x2 соответственно.

Так же есть верктор измерений z, который связан с вектором состояния X через матрицу H

9dcb99190531477fa911d7f8f544bdae032f98f3

Вот эта Hk и есть observation matrix.

Как ее получить, если у вас есть только система диф. уравнений? Ну подставьте в систему текущие значения, да посмотрите коэффициенты (вообще способов лианеризации много)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы