CKF和五阶CKF的目标跟踪代码

时间:2017-07-11 09:46:54
【文件属性】:

文件名称:CKF和五阶CKF的目标跟踪代码

文件大小:239KB

文件格式:RAR

更新时间:2017-07-11 09:46:54

CKF 五阶CKF 目标跟踪

收到一些国内外朋友的来信,咨询关于容积卡尔曼滤波的问题(CKF),大家比较疑惑的应该就是generator或G-orbit的概念。考虑到工作以后,重心必然转移,不可能再像现在这样详细的回答所有人的问题,更不可能再帮大家改论文、写(或改)代码了,请各位谅解!在此,上传一个CKF和五阶CKF用于目标跟踪的示例代码,代码中包含详细的注释,希望对大家以后的学习和研究有所帮助! 此代码利用C++对五阶CKF的第二G-轨迹进行了封装(Perms.exe),能理解最好,如果无法理解,也无须深究其具体构造方法!可执行文件底层是用字符串+递归算法实现的,理论上可以应用于任意维模型。但考虑到递归算法可能存在的栈溢出,重复压栈出栈带来的时间消耗等问题,我们利用矩阵的稀疏性和群的完全对称性,并通过分次调用,来尽可能减少栈的深度,提高计算速度。 容积点一次生成后,可以一直使用,通过对50维G-轨迹的生成速度(Core T6600@2.2GHz)进行测试,包含数据读写在内的速度约为1.5秒,速度尚可。而目前为止,本人尚未遇到达到甚至超过50维的系统,因此,暂时不作算法层面的优化。 注意:Perms.exe可以用于任意维模型,将可执行文件复制至工作目录下,调用时选择N/n,并输入你的模型维数,即可生成所需的第二G-轨迹。如果无法理解相关的概念,请参考示例代码,并记住如何使用即可~~~ 相关理论基础及所用模型,请参考以下文献: References (you may cite one of the articles in your paper): [1] X. C. Zhang, C. J. Guo, "Cubature Kalman filters: Derivation and extension," Chinses Physics B, vol.22, no.12, 128401, DOI: 10.1088/1674-1056/22/12/128401 [2] X. C. Zhang, Y. L. Teng, "A new derivation of the cubature Kalman filters," Asian Journal of Control, DOI: 10.1002/asjc.926 [3] X. C. Zhang, "Cubature information filters using high-degree and embedded cubature rules," Circuits, Systems, and Signal Processing,vol.33, no.6,pp.1799-1818,DOI: 10.1007/s00034-013-9730-0


【文件预览】:
Target tracking
----TR_Main.m(7KB)
----Fifth_degree_CKF.m(3KB)
----Three_degree_CKF.m(2KB)
----Perms.exe(1.04MB)
----rms.m(925B)

网友评论

  • 很不错,很有帮助。
  • 说实话,没发现有什么用
  • 还行,有些帮助,感谢。
  • 资源不错,要是再能详细解释下各个变量的含义,说明用法就更好了
  • 对于理解容积点的计算很有帮助
  • CUBATURE点的产生方法,不清楚,不过还是感谢
  • 正常运行了5维模型,但3维的模型研究了半天没弄出来,不过非常感谢!