vio_data_simulation
vio_data_simulation copied to clipboard
不同计算方法的误差
贺博您好,我试着使用欧拉法,中值积分和龙格库塔法(msckf-vio)进行计算,发现使用龙格库塔法没能提升精度,这不符合我之前了解的一些结论,请问是怎么回事?
下图是不同方法的误差,计算方法是err=gt位移-计算位移,再计算err的二范数。请问这种计算方式合适么?
mid是中值积分,runge是龙格库塔,rungem是将龙格库塔法中角速度替换为中值,euler是欧拉法。
误差计算没有问题。你可以把 imu 频率降低一点如 100,50,10 hz,让问题突出一点再对比下精度下。看看是不是你实现的不对。
我试了100和20hz,runge的误差依然比中值积分要大,可能要找找bug,谢谢贺博。
这是合成的数据还是真实imu录制的数据,我测试真实数据20s偏了20多m,这个图看上去就1m的误差。