经过了漫长的周期,终于把这个阶段写完了。中间经历了重写,希望没有对看过重写之前的那些烂文章的朋友造成误导,也再次对大家道个歉,没有把好质量关,惭愧不已!

一、主题回顾

这一系列的文章本质是围绕“优化”和“滤波”这两种融合方式来写的,其中在优化方案中,为了达到实时性,优化要使用滑动窗口。剩余大部分章节都是对这两个主题的基础知识补充。

优化与滤波的关系是什么,区别是什么?下面这张图可以给出很好的解释。

图里一共三行,第一行是优化,第二行是基于滑动窗口的优化,第三行是滤波。

因此我们可以简单地认为,“滤波就是窗口长度为1的滑动窗口优化”。实际上,如果去自习推导滤波和优化的公式,会发现滤波与滑动窗口具有同样的理论基础甚至推导步骤,所以“滤波就是窗口长度为1的滑动窗口优化”这句话并不是近似描述,而是在数学上严格成立的。

在这种情况下,在设计融合时,我们应该首选优化,当计算资源受限时,降低窗口的宽度即可,大不了降低到1,实现和滤波一样的效果(由于实现方式不同,长度为1的滑动窗口实际上会比滤波的计算量大一些)。

既然这样,为什么还有那么多基于滤波的方案存在,这主要由以下几类原因导致:

1)计算资源确实太少。在很多地方,只有嵌入式板子,计算能力非常少,因此滤波就变成不得已的选择。比如一些低成本的机器人系统。

2)历史原因。优化的兴起,也就是这几年的事,在这之前,很多系统基于滤波的方法已经达到了很好的效果(比如组合导航),且这些效果是大量工程技巧积累的结果。冒然换成优化,很多技巧要重新设计、重新验证,需要一定的沉淀周期。另外,即使一家公司开展了,让它变成行业主流方案,这中间需要的时间更长。

3)必要性不足。因为工程是问题推动的,如果一些领域滤波防范已经基本够用,问题较少,那么在行业内去推广就不会那么顺畅,也没那个必要。工程是用最小的代价做出够用的系统,做任何事都要考虑代价(时间成本、人力成本、物力成本、操作复杂度等等),不是只抓住精度这一个维度来看问题,那是为了技术而技术,很难称得上是合格的技术人员。

二、基础知识回顾

由于本系列文章就是介绍融合理论的,因此理论内容偏多,如果细分下来,可以大致划分为:IMU基础、滤波理论、优化理论,其中IMU理论占了大量的篇幅。

IMU基础是所有融合系统的重中之重,IMU器件也是任何融合系统的核心,你很难想象有哪个融合定位系统不包含IMU的。因此IMU理论的篇幅多一些是理所应当的。在实际应用中,影响一个系统性能的往往不是功能算法(比如IMU的惯性解算),因为这些算法都是死的,只有对和错的区别,没有好和坏的区别(你不能说按照同一个公式写出来的导航解算方法在性能上有的好有的坏),因此影响系统性能的多数是器件本身精度(随机游走、零偏不稳定性等)和器件参数精度(零偏、安装误差、刻度系数误差、温变参数等)。实际上,在实际使用中,要想把系统性能提高,就应该在器件误差识别和补偿上不遗余力地去做才行,而这却是最容易被大多数新手所忽略的,观念需要变。

滤波理论和优化理论就是一堆无聊的公式推导,在实际使用中,也没有太多需要对它进行变通的地方,对这方面理论感兴趣的,可以看看,不感兴趣的不看也无妨,其实并不影响去做工程(虽然这种想法略显功利)。

基础理论知识重要不重要,之前已经讨论过一次了,结论就是如果精力有限,应该首先把时间放在工程上,当能挤出来时间的时候,理论还是需要补一补的,换句话说,重要,但不是第一优先级。

三、怎样做好融合系统

在实际工程中,怎样实现一个可用的融合系统,应该是大多数从业人员都关心的问题。在我看来,融合系统和其他工程系统一样,想做好就坚持两个原则:合理性和透明性。

所谓合理性,就是指方案是否合理,比如刚才讨论的融合问题与优化问题,应该选谁,这需要结合需求进行具体问题具体分析,更细一点的,假如选了融合,那么各个传感器的信息之间应该用什么方式融合,融合结构是什么样的,也需要进一步思考。这些都是合理性的范畴。

所谓透明性,是指一个系统的结构设计完成以后,它的各个模块在什么情况下会表现出什么现象,这种表现的原理是什么,怎么解决。具体实现透明性的方法就是在实际环境中不断地去测试,不断地、充分地去暴露问题,然后给所有问题一个合理的、可信的、有理有据的解释。透明性之所以重要,是因为所有的性能提升都是以透明性为基础的,你不能把一个黑盒子调试到性能最优,即使偶尔一次可以,也不能保证每个模块都可以,只有透明性足够强,才能一步一步逐渐完善,最终达到产品级。

四、怎样学习融合定位

这个系列只介绍了理论,其实要把一个问题完全讲明白,是需要结合代码的,但是以我现在的工作强度,我不敢打包票有精力去写本阶段的配套代码了(原计划第三阶段要做的事),身不由己,没办法。

不过关于学习,我最想给出的建议就是:动手!动手!动手!只能动手,才能真正地理解深刻,才能实现学以致用,这也是学习唯一的途径。

祝各位工作顺利!