对属于同一对象的一组点进行卡尔曼滤波器?
Posted
技术标签:
【中文标题】对属于同一对象的一组点进行卡尔曼滤波器?【英文标题】:Kalman Filter on a set of points belonging to the same object? 【发布时间】:2020-09-07 13:11:24 【问题描述】:假设您正在跟踪属于同一 3D 平面的一组 20 个具有相同长度的线段。
为了形象化,假设您在一张纸上随机绘制一组长度为 10 厘米的线段。并让某人在镜头前移动这张纸。
假设这些段由两个点 A
和 B
表示。
假设我们设法跟踪所有段的A_t
和B_t
。跟踪点在帧与帧之间不稳定,导致偶尔出现抖动,这可以通过卡尔曼滤波器解决。
我的问题是关于状态向量的:
每个段的A
和B
的卡尔曼滤波器(有 20 个段,这导致 40 KF)是一个明显的解决方案,但它看起来太重了(知道这应该实时运行)。李>
由于所有跟踪点都具有相同的属性(属于同一个 3D 平面,具有相同的长度),难道不能用所有这些变量创建一个大的 KF 吗?
谢谢。
【问题讨论】:
【参考方案1】:-
运行时:请记住,卡尔曼方程涉及矩阵乘法和一次求逆。所以拥有 40 个状态意味着拥有一些 40x40 的矩阵。这总是比运行 40 个单态过滤器需要更长的时间来计算,其中您的矩阵是 1x1(标量)。无论如何,只有当您知道状态之间的数学关系(=相关)时,运行大过滤器才有意义,否则它的输出与运行 40 个单状态过滤器一样。
根据给出的信息,这真的很难说。例如。如果您的线段始终是一条折线,那么您可以用不同的方式来描述它,而不是对形状一无所知。
【讨论】:
以上是关于对属于同一对象的一组点进行卡尔曼滤波器?的主要内容,如果未能解决你的问题,请参考以下文章
使用 Opencv C++ 中给定对象的 X,Y 进行卡尔曼滤波器跟踪
滤波跟踪基于matlab不变扩展卡尔曼滤波器对装有惯性导航系统和全球定位系统IMU+GPS进行滤波跟踪含Matlab源码 2232期