Один многоцелевой фильтр Калмана против нескольких однозначных фильтров Калмана (множественное число)

Gidday cobbers / уважаемые коллеги,

С многообъектным отслеживанием, которое реализует прогнозирование / коррекцию Калмана, общий подход, который я вижу в других потоках SO, заключается в том, чтобы просто иметь вектор / массив фильтров Калмана для каждого объекта.

то есть «фильтры Калмана с несколькими объектами»

Но, зная, что если вы правильно определите свои матрицы пространства состояний, независимые друг от друга состояния останутся таковыми, как только будет произнесена любая (связная) математика — почему бы нам просто не расширить различные состояния и связанные с ними матрицы / векторы фильтр с все объект «данные» и использование один Фильтр Калмана? (да, в большинстве матриц будет много нулей).

Есть ли преимущество алгоритмической сложности в любом случае? Моя интуиция заключается в том, что использование одного фильтра против многих может снизить накладные расходы?

Может быть, проще управлять с точки зрения читабельности человека при работе с несколькими фильтрами?

Любые другие причины?

Спасибо

постскриптум возможный код будет в openCV / C ++

1

Решение

Если под увеличением вы подразумеваете объединение состояний всех объектов (как средних, так и ковариаций) в одно суперсостояние, а затем использование одного фильтра для прогнозирования / оценки этого суперсостояния, то я боюсь, что ваша интуиция о том, что он более эффективен скорее всего неправильно.

Необходимо учитывать, что уравнения KF включают в себя такие операции, как инверсия матрицы, с вычислительной сложностью O (n ^ 3) (или очень близко к этой фигуре), где n — размерность матрицы. Если вы объединяете несколько объектов в одно состояние, вычислительная сложность резко возрастет, даже если, как вы сказали, в основном это нули.

Работа с несколькими фильтрами, по одному на отслеживаемый объект, на мой взгляд, является более чистой с точки зрения проектирования и более эффективным подходом. Если вы действительно ограничены производительностью KF (сначала профиль), рассмотрите возможность размещения данных фильтра Калмана в непрерывном массиве, чтобы минимизировать потери в кеше.

3

Другие решения


По вопросам рекламы [email protected]