在很多pkg下都看到過odom坐標系的影子,在網上查了一些資料后感覺有點玄乎,這里寫一下自己的理解。
我們經常對一些非線性函數做線性化,使得在一個局部小鄰域內函數的形式變得更為簡單。
同樣,在ROS導航中,我們也會做類似線性化的工作,假設在短時間內Odometry是不會出現誤差的,這樣就可以利用Odometry的信息在AMCL下做好定位的工作。但是,長遠來看,Odometry總是會產生誤差的,並且隨時間的增長而累積,變得越來越大不可忽視。
這就引入了odom的作用:即補償這些長遠的誤差。所以我們的坐標變換都是:
- map到Odom的變換,這實際上是Odometry的累積誤差。
- odom到base_footprint的變換,在這個變換內我們可以認為Odometry的信息可信,方便我們利用Odometry的信息。
以上內容沒有經過實際檢驗,只是單憑網絡上博客自己做的一個解釋~。