Правильное состояние и ковариация ошибки оценки состояния с помощью расширенного или сигма-точечного фильтра Калмана или фильтра частиц и измерений
correct команда обновляет ковариацию состояния и ошибки расчета extendedKalmanFilter, unscentedKalmanFilter или particleFilter объект с использованием выходов измеренных систем. Чтобы реализовать расширенный или сигма-точечный фильтр Калмана, или фильтр частиц, используйте correct и predict команды вместе. Если ток выходного измерения существует, можно использовать correct и predict. Если измерение отсутствует, можно использовать только predict. Для получения информации о порядке использования команд смотрите Использование предсказания и исправление команд.
[ исправляет ковариацию оценки состояния и ошибки расчета состояния расширенного или сигма-точечного фильтра Калмана или объекта фильтра частиц CorrectedState,CorrectedStateCovariance]
= correct(obj,y)obj использование измеренной выход y.
Вы создаете obj использование extendedKalmanFilter, unscentedKalmanFilter или particleFilter команды. Вы задаете функцию перехода состояния и функцию измерения вашей нелинейной системы в obj. Вы также задаете, являются ли условия шума процесса и измерения аддитивными или неаддитивными в этих функциях. The State свойство объекта сохраняет последнее расчетное значение состояния. Предположим, что во временной шаг k, obj.State является . Это значение является оценкой состояния для времени k, оцененный с использованием измеренных выходов до времени k-1. Когда вы используете correct команда с выходным сигналом измеренной системы y[k], программное обеспечение возвращает исправленную оценку состояния в CorrectedState выход. Где - оценка состояния во время k, оцененный с использованием измеренных выходов до времени k. Команда возвращает ковариацию ошибки расчета состояния в CorrectedStateCovariance выход. Программное обеспечение также обновляет State и StateCovariance свойства obj с этими скорректированными значениями.
Используйте этот синтаксис, если функция измерения h, что вы указали в obj.MeasurementFcn имеет одну из следующих форм:
y(k) = h(x(k)) - для аддитивного шума измерения.
y(k) = h(x(k),v(k)) - для неаддитивного шума измерения.
Где y(k), x(k), и v(k) - измеренные выходы, состояния и измерение шум системы на временном шаге k. Единственными входами для h являются состояния и шум измерения.
[ задает дополнительные входные аргументы, если функция измерения системы требует этих входов. Можно задать несколько аргументов.CorrectedState,CorrectedStateCovariance]
= correct(obj,y,Um1,...,Umn)
Используйте этот синтаксис, если h функции измерения имеет одну из следующих форм:
y(k) = h(x(k),Um1,...,Umn) - для аддитивного шума измерения.
y(k) = h(x(k),v(k),Um1,...,Umn) - для неаддитивного шума измерения.
correct команда передает эти входы в функцию измерения, чтобы вычислить предполагаемые выходы.
clone | extendedKalmanFilter | initialize | particleFilter | predict | residual | unscentedKalmanFilter