У меня есть реализация фильтра Калмана для задачи отслеживания с моделью постоянного ускорения. В этой модели:
Моя матрица состояний:
x = [x, y , Vx, Vy, ax, ay]
;
Моя матрица измерений:
Y = [x' , y', Vx', Vy']
;
Я ставлю в качестве своей матрицы ковариации следующее:
R = [r11, r12, 0, 0 ; r21, r22, 0, 0 ; 0, 0 , r33, r34 ;0, 0, r43, r44];
Иногда у меня есть позиция измерения (x ', y') , которая иногда не так идеально. В таких случаях обычно устанавливают высокую ковариацию измерений для положения [r11, r12, r21, r22], чтобы избежать большого влияния на отфильтрованный вывод, но это влияет как на положение, так и на скорость. Фильтр доверяет состоянию больше, чем измерение (сценарий типичного обновления)
В чем моя проблема:
Я хочу разделить Позицию и Скорость при определенных условиях, что по сути означает, что я хочу Измерение положения (x ', y') не влияет на скорость моего фильтра. Фильтр должен обновлять позицию и скорость отдельно. Измерение положения хорошо для положения, а измерение скорости хорошо для скорости. Но они не годятся друг для друга (в некоторых случаях)
То, что я уже пробовал
Я пытаюсь поместить ковариационную матрицу измерений в «Верхний правый» и «Нижний левый» ( Это означает размещение значения ковариации измерения в месте, где в вышеуказанной R-матрице есть нули), но это в конечном итоге делает мой фильтр более нестабильным.
Есть ли хороший способ сделать это, или кто-нибудь сталкивался с такой проблемой раньше? Любые идеи будут полезны здесь.