自动驾驶基础之——如何写卡尔曼滤波器?

2018-09-26 23:09:20·  来源:自动驾驶干货铺  
 

将以上五个公式写成代码如下:

至此,一个卡尔曼滤波器的雏形就出来了。

包含的变量有

代码:使用卡尔曼滤波器

以激光雷达数据为例,使用以上滤波器,代码如下:

其中GetLidarData函数除了获取点的位置信息m_x和m_y外,还获取了当前时刻的时间戳,用于计算前后两帧的时间差delta_t。

以上就是卡尔曼滤波器对于匀速运动物体跟踪的例子。在这个基础上,业内还有扩展卡尔曼滤波器和无迹卡尔曼滤波器,它们与经典卡尔曼滤波器的最大区别是状态转移矩阵F和测量矩阵H的不同,剩下的跟踪过程依然需要使用前面介绍的7个公式。

只要你能够写出某个模型的F、P、Q、H、R矩阵,任何状态跟踪的问题都将迎刃而解。

结语

以上就是卡尔曼滤波器从感性分析到理性分析的过程。你会发现真正进行工程开发时,除了具备基本的写代码能力外,利用大学所学的线性代数知识推导公式的能力也是必不可少的。

 
分享到:
 
反对 0 举报 0 收藏 0 评论 0
沪ICP备11026917号-25