Правильная ковариация ошибок оценки состояния и состояния с использованием расширенного или незаметного фильтра Калмана или фильтра частиц и измерений
correct команда обновляет ковариацию состояния и ошибки оценки состояния extendedKalmanFilter, unscentedKalmanFilter или particleFilter объект с помощью измеряемых системных выходов. Чтобы реализовать расширенный или незаметный фильтр Калмана, или фильтр частиц, используйте correct и predict команды вместе. При наличии текущего выходного измерения можно использовать correct и predict. Если измерение отсутствует, можно использовать только predict. Сведения о порядке использования команд см. в разделе Использование команд прогнозирования и исправления.
[ корректирует ковариацию оценки состояния и ошибки оценки состояния расширенного или незаметного фильтра Калмана или объекта фильтра частиц CorrectedState,CorrectedStateCovariance] = correct(obj,y)obj с использованием измеренного выходного сигнала y.
Вы создаете obj с использованием extendedKalmanFilter, unscentedKalmanFilter или particleFilter команды. Функция перехода состояния и функция измерения нелинейной системы задаются в obj. В этих функциях также указывается, являются ли термины шума процесса и измерения аддитивными или неаддитивными. State свойство объекта хранит последнее оценочное значение состояния. Предположим, что на шаге времени k, obj.State x − 1]. Это значение является оценкой состояния для времениk, оценено с использованием измеренных выходов до времени k-1. При использовании correct команда с выходом измеряемой системы y[k], программное обеспечение возвращает скорректированную оценку состояния k 'k] в CorrectedState выход. Где k 'k] - оценка состояния во времяk, оценено с использованием измеренных выходов до времени k. Команда возвращает ковариацию ошибки оценки состояния 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