Линейный фильтр Калмана для отслеживания объектов
A trackingKF объект является дискретным линейным фильтром Калмана, используемым для отслеживания положений и скоростей целевых платформ.
Фильтр Калмана является рекурсивным алгоритмом для оценки развивающегося состояния процесса, когда измерения производятся на процессе. Фильтр линейен, когда эволюция состояния следует линейной модели движения, и измерения являются линейными функциями состояния. Фильтр принимает, что и процесс, и измерения имеют аддитивный шум. Когда шум процесса и шум измерения Гауссовы, фильтр Калмана является оптимальным средством оценки состояния минимальной средней квадратичной невязки (MMSE) для линейных процессов.
Использовать этот объект можно следующими способами:
Явным образом установите модель движения. Установите свойство модели движения, MotionModel, в Custom, а затем используйте StateTransitionModel свойство для установки матрицы переходов состояний.
Установите MotionModel свойство предопределенной модели перехода состояний:
| Модель движения |
|---|
'1D Constant Velocity' |
'1D Constant Acceleration' |
'2D Constant Velocity' |
'2D Constant Acceleration' |
'3D Constant Velocity' |
'3D Constant Acceleration' |
filter = trackingKF создает линейный объект фильтра Калмана для движущегося объекта в дискретном времени, 2-D, постоянной скорости. Фильтр Калмана использует значения по умолчанию для StateTransitionModel, MeasurementModel, и ControlModel свойства. Функция также устанавливает MotionModel свойство к '2D Constant Velocity'.
задает модель перехода состояния, filter = trackingKF(F,H)F, и модель измерения, H. С помощью этого синтаксиса функция также устанавливает MotionModel свойство к 'Custom'.
также задает модель управления, filter = trackingKF(F,H,G)G. С помощью этого синтаксиса функция также устанавливает MotionModel свойство к 'Custom'.
устанавливает свойство модели движения, filter = trackingKF('MotionModel',model)MotionModel, в model.
конфигурирует свойства фильтра Калмана при помощи одной или нескольких filter = trackingKF(___,Name,Value)Name, Value аргументы в виде пар и любой из предыдущих синтаксисов. Любые неопределенные свойства берут значения по умолчанию.
predict | Предсказать состояние и ковариацию ошибки расчета состояния линейного фильтра Калмана |
correct | Правильное состояние и ковариация ошибки оценки состояния с помощью отслеживающего фильтра |
correctjpda | Правильное состояние и ковариация ошибки оценки состояния с помощью отслеживающего фильтра и JPDA |
distance | Расстояния между током и предсказанными измерениями отслеживающего фильтра |
likelihood | Вероятность измерения с отслеживающего фильтра |
clone | Создайте повторяющийся фильтр отслеживания |
residual | Измерение остаточного и остаточного шума от отслеживающего фильтра |
smooth | Обратная оценка сглаженного состояния отслеживающего фильтра |
initialize | Инициализируйте состояние и ковариацию отслеживающего фильтра |
Фильтр Калмана описывает движение объекта путем оценки его состояния. Состояние обычно состоит из положения объекта и скорости и, возможно, его ускорения. Состояние может охватывать одно, два или три пространственных размерности. Чаще всего вы используете фильтр Калмана, чтобы смоделировать движение с постоянной скоростью или с постоянным ускорением. Линейный фильтр Калмана принимает, что процесс подчиняется следующему линейному стохастическому разностному уравнению:
xk - состояние на шаге k. Fk - матрица модели перехода состояний. Gk - матрица модели управления. uk представляет известные обобщенные элементы управления, действующие на объект. В дополнение к заданным уравнениям движения на движение могут влиять случайные шумовые возмущения, vk. Состояние, матрица переходов и элементы управления вместе предоставляют достаточно информации, чтобы определить будущее движение объекта в отсутствие шума.
В фильтре Калмана измерения также являются линейными функциями состояния,
где Hk - матрица модели измерения. Эта модель выражает измерения как функции состояния. Измерение может состоять из положения, положения и скорости объекта, или его положения, скорости и ускорения, или некоторой функции этих величин. Измерения могут также включать шумовые возмущения, wk.
Эти уравнения, в отсутствие шума, моделируют фактическое движение объекта и фактические измерения. Шумовые вклады на каждом шаге неизвестны и не могут быть смоделированы. Известны только шумовые ковариационные матрицы. Ковариационная матрица состояния обновляется знанием только о шумовой ковариации.
Краткое описание алгоритма линейного фильтра Калмана смотрите в Linear Kalman Filters.
[1] Коричневый, R.G. и P.Y.C. Ван. Введение в анализ случайных сигналов и прикладную фильтрацию Калмана. 3-е издание. Нью-Йорк: John Wiley & Sons, 1997.
[2] Калман, Р. Е. «Новый подход к линейным задачам фильтрации и предсказания». Сделка ASME-Journal of Basic Engineering, том 82, серия D, март 1960, стр. 35-45.
[3] Блэкман, Сэмюэль. Отслеживание нескольких целей с помощью радаров. Дом Артеха. 1986.