diff --git "a/\344\270\215\345\220\214SLAM\347\256\227\346\263\225\346\257\224\350\276\203/\344\270\211\347\273\264\346\277\200\345\205\211SLAM\345\216\237\347\220\206\345\217\212\345\274\200\346\272\220\346\226\271\346\241\210\345\257\271\346\257\224-\350\265\265\351\224\264.pdf" "b/\344\270\215\345\220\214SLAM\347\256\227\346\263\225\346\257\224\350\276\203/\344\270\211\347\273\264\346\277\200\345\205\211SLAM\345\216\237\347\220\206\345\217\212\345\274\200\346\272\220\346\226\271\346\241\210\345\257\271\346\257\224-\350\265\265\351\224\264.pdf" new file mode 100644 index 0000000..33bee1d Binary files /dev/null and "b/\344\270\215\345\220\214SLAM\347\256\227\346\263\225\346\257\224\350\276\203/\344\270\211\347\273\264\346\277\200\345\205\211SLAM\345\216\237\347\220\206\345\217\212\345\274\200\346\272\220\346\226\271\346\241\210\345\257\271\346\257\224-\350\265\265\351\224\264.pdf" differ diff --git "a/\344\270\215\345\220\214SLAM\347\256\227\346\263\225\346\257\224\350\276\203/\344\270\215\345\220\214SLAM\347\256\227\346\263\225\346\257\224\350\276\203.md" "b/\344\270\215\345\220\214SLAM\347\256\227\346\263\225\346\257\224\350\276\203/\344\270\215\345\220\214SLAM\347\256\227\346\263\225\346\257\224\350\276\203.md" new file mode 100644 index 0000000..8468767 --- /dev/null +++ "b/\344\270\215\345\220\214SLAM\347\256\227\346\263\225\346\257\224\350\276\203/\344\270\215\345\220\214SLAM\347\256\227\346\263\225\346\257\224\350\276\203.md" @@ -0,0 +1,24 @@ +## LEGO_LOAM + +参考博客: + +[简单总结LEGO-LOAM相对于LOAM的一些改进及不同点](https://wenku.baidu.com/view/2b7cb5dacbd376eeaeaad1f34693daef5ef71321.html) + +### 3.两步优化的帧间里程计 + +#### 3.1和LOAM的相同点 + +都是通过前后两帧的点云来估计两帧之间的运动,然后累加得到前端里程计的输出(相对于第一帧),也都是采用的线面约束。 + +#### 3.2不同点 + +LOAM采用的是线面约束同时优化六自由度的帧间位姿,LEGO-LOAM的前端分成两个步骤,每个步骤估计三个自由度。 + +Motivation:提高运算效率,可以在嵌入式平台运行。 + +```shell +#步骤 +1)使用地面点构建点面约束,由于地面点之间的约束对x,y,yaw三个自由度是不可观的(地面可以转动,但残差不会明显变化),所以地面点的优化只会对pitch、roll、z进行约束和优化。 +2)使用提取的角点进行优化,由于多线激光雷达提取的角点通常是垂直的边缘特征,这些特征对x, y , yaw有较好的能观性,通过角点的优化,结合1)中的结果就可以得到六自由度的帧间优化结果。具体代码实现在updateTransformation() 中。 +``` + diff --git "a/\345\276\205\351\227\256\351\227\256\351\242\230.md" "b/\345\276\205\351\227\256\351\227\256\351\242\230.md" index 8500d29..37a266b 100644 --- "a/\345\276\205\351\227\256\351\227\256\351\242\230.md" +++ "b/\345\276\205\351\227\256\351\227\256\351\242\230.md" @@ -29,4 +29,28 @@ 2.a.LIO + GNSS 系统中,因为使用的是惯导,默认已经完成一系列的初始化,所以不需要进行重力估计,也可以很容易得到ENU下的坐标。b.LIO 和 VIO 系统因为没有GNSS 信息,所以无法获得绝对的ENU信息,可以通过估计imu的重力方向,使用重力方向确定 ENU(前左上)的“天”,进而确定导航系下的原点。c.LIO_SAM 因为使用的是9DOF IMU,磁力计可以获取绝对重力,所以不需要额外做重力估计。 -3.lego_loam 的去重力部分,就只是通过外参,把imu的重力分量去掉了,没有说有估计重力的部分。是因为在lego_loam 这类系统里,默认机体是平放地面,Z轴朝上, 而VINS考虑到手持飞控等场景,所以需要额外估计重力方向。但是为了系统具有更强的鲁棒性,所以静止几秒估计重力的方向会更好。("激光比较重型,除了机载的特殊轻型激光,一般都默认水平安装的") \ No newline at end of file +3.lego_loam 的去重力部分,就只是通过外参,把imu的重力分量去掉了,没有说有估计重力的部分。是因为在lego_loam 这类系统里,默认机体是平放地面,Z轴朝上, 而VINS考虑到手持飞控等场景,所以需要额外估计重力方向。但是为了系统具有更强的鲁棒性,所以静止几秒估计重力的方向会更好。("激光比较重型,除了机载的特殊轻型激光,一般都默认水平安装的") + +## 3.ESKF 中融合轮速计后,kalman update问题 + +​ 问:ESKF 融合轮速计后如何考虑常值bias?答:把这个bias作为状态量添加到状态方程里,然后适当修改相应观测的更新。 +​ 问:常值bias状态矩阵里都是0,咋更新?答:常值bias,在融入观测时,随着kalman增益的改变,跟着改变。 +​ 问:如果不融合gps,轮速计的常值bias还能估计出来吗? + +## 4.slam整体处理框架上,使用buffer把所有数据进行存起来,这样做是否合理?更行业的处理数据的方法是:处理最新的数据还是也是所有数据存起来慢慢处理呢? + +## 5.建图与定位的算法上主要区别在哪?这样理解正确吗:建图是通过融合多源信息,计算得到最优的的帧间里程计,进而把点云拼接起来成为点云地图,因为优化所需要的时间和建图的规模较大,所以一般可以选择离线建图,对实时性要求没这么高。而定位一般是基于一定的先验信息(先验地图),进行全局定位,对实时性要求较高。 + +## 6.ESKF状态方程推导中,为什么状态方程离散化后, + +## delta_x_dot 可以转为 delta_x_k ? (微分具有对下一时刻的量做预测的意思吗?)对应如下图(1、2) + +image-20220520132030187 + +image-20220520132058853 + +## 7.第六章的惯性导航误差分析总结中,delta_v_dot 的推导代表的是world系下速度增量,是不是末尾漏了减去g? (对应下图3) + +![image-20220520132833398](https://kaho-pic-1307106074.cos.ap-guangzhou.myqcloud.com/CSDN_Pictures/%E6%B7%B1%E8%93%9D%E5%A4%9A%E4%BC%A0%E6%84%9F%E5%99%A8%E8%9E%8D%E5%90%88%E5%AE%9A%E4%BD%8D/%E7%AC%AC%E4%BA%8C%E7%AB%A0%E6%BF%80%E5%85%89%E9%87%8C%E7%A8%8B%E8%AE%A11image-20220520132833398.png) + +## 8.课程框架里的ekf是作为一个前端吗?对前后端的概念较为模糊。后端主要是指:全局优化、回环检测等模块吗? \ No newline at end of file diff --git "a/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2545\346\254\241\347\255\224\347\226\221.rar" "b/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2545\346\254\241\347\255\224\347\226\221.rar" new file mode 100644 index 0000000..b82ab79 Binary files /dev/null and "b/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2545\346\254\241\347\255\224\347\226\221.rar" differ diff --git "a/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2545\346\254\241\347\255\224\347\226\221/EKF\346\216\250\345\257\274.pdf" "b/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2545\346\254\241\347\255\224\347\226\221/EKF\346\216\250\345\257\274.pdf" new file mode 100644 index 0000000..0668bf0 Binary files /dev/null and "b/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2545\346\254\241\347\255\224\347\226\221/EKF\346\216\250\345\257\274.pdf" differ diff --git "a/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2545\346\254\241\347\255\224\347\226\221/GPS-aided INS Solution for OpenPilot.pdf" "b/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2545\346\254\241\347\255\224\347\226\221/GPS-aided INS Solution for OpenPilot.pdf" new file mode 100644 index 0000000..dec65a5 Binary files /dev/null and "b/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2545\346\254\241\347\255\224\347\226\221/GPS-aided INS Solution for OpenPilot.pdf" differ diff --git "a/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2545\346\254\241\347\255\224\347\226\221/\345\233\275\345\272\206\347\255\224\347\226\221\351\227\256\351\242\230\346\224\266\351\233\206\350\241\250\345\215\225.pdf" "b/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2545\346\254\241\347\255\224\347\226\221/\345\233\275\345\272\206\347\255\224\347\226\221\351\227\256\351\242\230\346\224\266\351\233\206\350\241\250\345\215\225.pdf" new file mode 100644 index 0000000..47aa649 Binary files /dev/null and "b/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2545\346\254\241\347\255\224\347\226\221/\345\233\275\345\272\206\347\255\224\347\226\221\351\227\256\351\242\230\346\224\266\351\233\206\350\241\250\345\215\225.pdf" differ diff --git "a/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2545\346\254\241\347\255\224\347\226\221/\347\254\254\344\270\203\346\254\241\344\275\234\344\270\232\346\200\235\350\267\257\345\210\206\344\272\253-\345\274\240\346\235\276\351\271\217.pdf" "b/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2545\346\254\241\347\255\224\347\226\221/\347\254\254\344\270\203\346\254\241\344\275\234\344\270\232\346\200\235\350\267\257\345\210\206\344\272\253-\345\274\240\346\235\276\351\271\217.pdf" new file mode 100644 index 0000000..e2af6df Binary files /dev/null and "b/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2545\346\254\241\347\255\224\347\226\221/\347\254\254\344\270\203\346\254\241\344\275\234\344\270\232\346\200\235\350\267\257\345\210\206\344\272\253-\345\274\240\346\235\276\351\271\217.pdf" differ diff --git "a/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2545\346\254\241\347\255\224\347\226\221/\351\231\210\346\242\223\346\235\260\347\232\204\351\227\256\351\242\230.pdf" "b/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2545\346\254\241\347\255\224\347\226\221/\351\231\210\346\242\223\346\235\260\347\232\204\351\227\256\351\242\230.pdf" new file mode 100644 index 0000000..85d4d69 Binary files /dev/null and "b/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2545\346\254\241\347\255\224\347\226\221/\351\231\210\346\242\223\346\235\260\347\232\204\351\227\256\351\242\230.pdf" differ diff --git "a/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2545\346\254\241\347\255\224\347\226\221/\351\231\210\346\242\223\346\235\260\347\254\2546\347\253\240\344\275\234\344\270\232.pdf" "b/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2545\346\254\241\347\255\224\347\226\221/\351\231\210\346\242\223\346\235\260\347\254\2546\347\253\240\344\275\234\344\270\232.pdf" new file mode 100644 index 0000000..282f334 Binary files /dev/null and "b/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2545\346\254\241\347\255\224\347\226\221/\351\231\210\346\242\223\346\235\260\347\254\2546\347\253\240\344\275\234\344\270\232.pdf" differ diff --git "a/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2545\346\254\241\347\255\224\347\226\221/\351\231\210\346\242\223\346\235\260\351\227\256\351\242\230\345\233\236\347\255\224.pdf" "b/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2545\346\254\241\347\255\224\347\226\221/\351\231\210\346\242\223\346\235\260\351\227\256\351\242\230\345\233\236\347\255\224.pdf" new file mode 100644 index 0000000..8ff2f30 Binary files /dev/null and "b/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2545\346\254\241\347\255\224\347\226\221/\351\231\210\346\242\223\346\235\260\351\227\256\351\242\230\345\233\236\347\255\224.pdf" differ diff --git "a/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2546\343\200\201 7\347\253\240\344\274\230\347\247\200\344\275\234\344\270\232\345\210\206\344\272\253--\351\231\210\346\242\223\346\235\260.rar" "b/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2546\343\200\201 7\347\253\240\344\274\230\347\247\200\344\275\234\344\270\232\345\210\206\344\272\253--\351\231\210\346\242\223\346\235\260.rar" new file mode 100644 index 0000000..2a09434 Binary files /dev/null and "b/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2546\343\200\201 7\347\253\240\344\274\230\347\247\200\344\275\234\344\270\232\345\210\206\344\272\253--\351\231\210\346\242\223\346\235\260.rar" differ diff --git "a/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2546\343\200\201 7\347\253\240\344\274\230\347\247\200\344\275\234\344\270\232\345\210\206\344\272\253--\351\231\210\346\242\223\346\235\260/EKF\346\216\250\345\257\274.pdf" "b/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2546\343\200\201 7\347\253\240\344\274\230\347\247\200\344\275\234\344\270\232\345\210\206\344\272\253--\351\231\210\346\242\223\346\235\260/EKF\346\216\250\345\257\274.pdf" new file mode 100644 index 0000000..0668bf0 Binary files /dev/null and "b/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2546\343\200\201 7\347\253\240\344\274\230\347\247\200\344\275\234\344\270\232\345\210\206\344\272\253--\351\231\210\346\242\223\346\235\260/EKF\346\216\250\345\257\274.pdf" differ diff --git "a/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2546\343\200\201 7\347\253\240\344\274\230\347\247\200\344\275\234\344\270\232\345\210\206\344\272\253--\351\231\210\346\242\223\346\235\260/RK4.pdf" "b/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2546\343\200\201 7\347\253\240\344\274\230\347\247\200\344\275\234\344\270\232\345\210\206\344\272\253--\351\231\210\346\242\223\346\235\260/RK4.pdf" new file mode 100644 index 0000000..5802e98 Binary files /dev/null and "b/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2546\343\200\201 7\347\253\240\344\274\230\347\247\200\344\275\234\344\270\232\345\210\206\344\272\253--\351\231\210\346\242\223\346\235\260/RK4.pdf" differ diff --git "a/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\254\345\205\255\343\200\201\344\270\203\347\253\240\344\274\230\347\247\200\344\275\234\344\270\232\345\210\206\344\272\253--\351\231\210\346\242\223\346\235\260.pdf_4bd11ab35b029339ee36c9dfe4faa07c" "b/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2546\343\200\201 7\347\253\240\344\274\230\347\247\200\344\275\234\344\270\232\345\210\206\344\272\253--\351\231\210\346\242\223\346\235\260/\347\254\254\345\205\255\343\200\201\344\270\203\347\253\240\344\274\230\347\247\200\344\275\234\344\270\232\345\210\206\344\272\253--\351\231\210\346\242\223\346\235\260.pdf" similarity index 51% rename from "\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\254\345\205\255\343\200\201\344\270\203\347\253\240\344\274\230\347\247\200\344\275\234\344\270\232\345\210\206\344\272\253--\351\231\210\346\242\223\346\235\260.pdf_4bd11ab35b029339ee36c9dfe4faa07c" rename to "\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2546\343\200\201 7\347\253\240\344\274\230\347\247\200\344\275\234\344\270\232\345\210\206\344\272\253--\351\231\210\346\242\223\346\235\260/\347\254\254\345\205\255\343\200\201\344\270\203\347\253\240\344\274\230\347\247\200\344\275\234\344\270\232\345\210\206\344\272\253--\351\231\210\346\242\223\346\235\260.pdf" index d1602ba..f06f79b 100644 Binary files "a/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\254\345\205\255\343\200\201\344\270\203\347\253\240\344\274\230\347\247\200\344\275\234\344\270\232\345\210\206\344\272\253--\351\231\210\346\242\223\346\235\260.pdf_4bd11ab35b029339ee36c9dfe4faa07c" and "b/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2546\343\200\201 7\347\253\240\344\274\230\347\247\200\344\275\234\344\270\232\345\210\206\344\272\253--\351\231\210\346\242\223\346\235\260/\347\254\254\345\205\255\343\200\201\344\270\203\347\253\240\344\274\230\347\247\200\344\275\234\344\270\232\345\210\206\344\272\253--\351\231\210\346\242\223\346\235\260.pdf" differ diff --git "a/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2546\343\200\201 7\347\253\240\344\274\230\347\247\200\344\275\234\344\270\232\345\210\206\344\272\253--\351\231\210\346\242\223\346\235\260/\351\231\210\346\242\223\346\235\260\347\254\254\344\270\203\347\253\240\344\275\234\344\270\232\350\257\264\346\230\216\346\226\207\346\241\243.pdf" "b/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2546\343\200\201 7\347\253\240\344\274\230\347\247\200\344\275\234\344\270\232\345\210\206\344\272\253--\351\231\210\346\242\223\346\235\260/\351\231\210\346\242\223\346\235\260\347\254\254\344\270\203\347\253\240\344\275\234\344\270\232\350\257\264\346\230\216\346\226\207\346\241\243.pdf" new file mode 100644 index 0000000..8655005 Binary files /dev/null and "b/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2546\343\200\201 7\347\253\240\344\274\230\347\247\200\344\275\234\344\270\232\345\210\206\344\272\253--\351\231\210\346\242\223\346\235\260/\351\231\210\346\242\223\346\235\260\347\254\254\344\270\203\347\253\240\344\275\234\344\270\232\350\257\264\346\230\216\346\226\207\346\241\243.pdf" differ diff --git "a/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2546\343\200\201 7\347\253\240\344\274\230\347\247\200\344\275\234\344\270\232\345\210\206\344\272\253--\351\231\210\346\242\223\346\235\260/\351\231\210\346\242\223\346\235\260\347\254\254\345\205\255\347\253\240\344\275\234\344\270\232\350\257\264\346\230\216\346\226\207\346\241\243.pdf" "b/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2546\343\200\201 7\347\253\240\344\274\230\347\247\200\344\275\234\344\270\232\345\210\206\344\272\253--\351\231\210\346\242\223\346\235\260/\351\231\210\346\242\223\346\235\260\347\254\254\345\205\255\347\253\240\344\275\234\344\270\232\350\257\264\346\230\216\346\226\207\346\241\243.pdf" new file mode 100644 index 0000000..282f334 Binary files /dev/null and "b/\347\254\254\344\270\203\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\225/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2546\343\200\201 7\347\253\240\344\274\230\347\247\200\344\275\234\344\270\232\345\210\206\344\272\253--\351\231\210\346\242\223\346\235\260/\351\231\210\346\242\223\346\235\260\347\254\254\345\205\255\347\253\240\344\275\234\344\270\232\350\257\264\346\230\216\346\226\207\346\241\243.pdf" differ diff --git "a/\347\254\254\344\270\211\347\253\240 3D\346\277\200\345\205\211\351\207\214\347\250\213\350\256\2412/README.md" "b/\347\254\254\344\270\211\347\253\240 3D\346\277\200\345\205\211\351\207\214\347\250\213\350\256\2412/README.md" index a6fb541..b0324b3 100644 --- "a/\347\254\254\344\270\211\347\253\240 3D\346\277\200\345\205\211\351\207\214\347\250\213\350\256\2412/README.md" +++ "b/\347\254\254\344\270\211\347\253\240 3D\346\277\200\345\205\211\351\207\214\347\250\213\350\256\2412/README.md" @@ -57,7 +57,11 @@ sudo apt-get install libgoogle-glog-dev #### 公式推导 -注意这里的推导形式是分别更新R ,t ,与 直接更新转换矩阵T的导数会有所不同 +注意: + +1.这里的推导形式是分别更新R ,t ,与 直接更新转换矩阵T的导数会有所不同 + +2.线面残差是一个数,为标量,而待优化量位移、姿态等是具有方向、大小,是矢量,在 线面残差(标量)求对应待优化变量(矢量)的jacobian时,链式法则时,需要求 标量对矢量的偏导,标量对矢量的偏导是一个单位向量,代表矢量的单位方向。 参考博客:[基于线面特征的激光里程计](https://zhuanlan.zhihu.com/p/348195351) @@ -93,7 +97,7 @@ $$ =\frac{\left(p_{i}^{\prime}-p_{b}\right) \times\left(p_{i}^{\prime}-p_{a}\right)}{\left|\left(p_{i}^{\prime}-p_{b}\right) \times\left(p_{i}^{\prime}-p_{a}\right)\right|} \frac{\left(p_{a}-p_{b}\right)_{\times}}{\left|p_{a}-p_{b}\right|} \end{gathered} $$ -其中, +其中,标量对矢量求导 $$ \quad \frac{\alpha|X|}{\alpha X}=\frac{\alpha\left(s \operatorname{qrt}\left(X^{T} X\right)\right)}{\alpha\left(X^{T} X\right)} \frac{\alpha\left(X^{T} X\right)}{\alpha(X)}=\frac{X}{|X|} $$ diff --git "a/\347\254\254\344\270\211\347\253\240 3D\346\277\200\345\205\211\351\207\214\347\250\213\350\256\2412/\344\275\234\344\270\232\350\256\262\350\257\204/CHENXXX\351\227\256\351\242\230.pdf" "b/\347\254\254\344\270\211\347\253\240 3D\346\277\200\345\205\211\351\207\214\347\250\213\350\256\2412/\344\275\234\344\270\232\350\256\262\350\257\204/CHENXXX\351\227\256\351\242\230.pdf" new file mode 100644 index 0000000..e1029b5 Binary files /dev/null and "b/\347\254\254\344\270\211\347\253\240 3D\346\277\200\345\205\211\351\207\214\347\250\213\350\256\2412/\344\275\234\344\270\232\350\256\262\350\257\204/CHENXXX\351\227\256\351\242\230.pdf" differ diff --git "a/\347\254\254\344\270\211\347\253\240 3D\346\277\200\345\205\211\351\207\214\347\250\213\350\256\2412/\344\275\234\344\270\232\350\256\262\350\257\204/\345\244\232\344\274\240\346\204\237\345\231\250\350\236\215\345\220\210\345\256\232\344\275\215\347\254\254\345\233\233\346\234\237\347\254\254\344\272\214\346\254\241\347\272\277\344\270\212\347\255\224\347\226\221.pdf" "b/\347\254\254\344\270\211\347\253\240 3D\346\277\200\345\205\211\351\207\214\347\250\213\350\256\2412/\344\275\234\344\270\232\350\256\262\350\257\204/\345\244\232\344\274\240\346\204\237\345\231\250\350\236\215\345\220\210\345\256\232\344\275\215\347\254\254\345\233\233\346\234\237\347\254\254\344\272\214\346\254\241\347\272\277\344\270\212\347\255\224\347\226\221.pdf" new file mode 100644 index 0000000..f894ed3 Binary files /dev/null and "b/\347\254\254\344\270\211\347\253\240 3D\346\277\200\345\205\211\351\207\214\347\250\213\350\256\2412/\344\275\234\344\270\232\350\256\262\350\257\204/\345\244\232\344\274\240\346\204\237\345\231\250\350\236\215\345\220\210\345\256\232\344\275\215\347\254\254\345\233\233\346\234\237\347\254\254\344\272\214\346\254\241\347\272\277\344\270\212\347\255\224\347\226\221.pdf" differ diff --git "a/\347\254\254\344\272\214\347\253\240 3D\346\277\200\345\205\211\351\207\214\347\250\213\350\256\241/README.md" "b/\347\254\254\344\272\214\347\253\240 3D\346\277\200\345\205\211\351\207\214\347\250\213\350\256\241/README.md" index ba1e2ae..ff193a4 100644 --- "a/\347\254\254\344\272\214\347\253\240 3D\346\277\200\345\205\211\351\207\214\347\250\213\350\256\241/README.md" +++ "b/\347\254\254\344\272\214\347\253\240 3D\346\277\200\345\205\211\351\207\214\347\250\213\350\256\241/README.md" @@ -309,6 +309,18 @@ ICP_SVD: max_iter : 10 ``` +### ICP补充 + +经陈助教的指点,在进行ICP_SVD求解时,求出的旋转矩阵,可以进行reflection(旋转反射的判断),KITTI场景中,数据集可能没有点云反射的现象,但是工程中,对求出的R阵加入reflection的判断,可以提升激光里程计ICP的精度。当出现需反射问题时:det(VU.tranpose()) = -1 ,正确的R阵为: det(VU.tranpose()) = 1。因此,我们可以将R阵改为如下通式: + +![image-20220424175530082](https://kaho-pic-1307106074.cos.ap-guangzhou.myqcloud.com/CSDN_Pictures/%E6%B7%B1%E8%93%9D%E5%A4%9A%E4%BC%A0%E6%84%9F%E5%99%A8%E8%9E%8D%E5%90%88%E5%AE%9A%E4%BD%8D/%E7%AC%AC%E4%BA%8C%E7%AB%A0%E6%BF%80%E5%85%89%E9%87%8C%E7%A8%8B%E8%AE%A11image-20220424175530082.png) + +参考论文:Least-Squares Rigid Motion Using SVD + +参考博客:[雷达系列论文翻译(二):Least-Squares Rigid Motion Using SVD](https://blog.csdn.net/weixin_39061796/article/details/119861178) + + + ## NDT_CPU 参考源码: [autoware ndt_cpu](https://github.com/Autoware-AI/core_perception/tree/master/ndt_cpu) diff --git "a/\347\254\254\344\272\214\347\253\240 3D\346\277\200\345\205\211\351\207\214\347\250\213\350\256\241/\347\254\2542\347\253\240\344\275\234\344\270\232\346\200\235\350\267\257\350\256\262\350\247\243--\351\233\215\345\267\235.pdf" "b/\347\254\254\344\272\214\347\253\240 3D\346\277\200\345\205\211\351\207\214\347\250\213\350\256\241/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2542\347\253\240\344\275\234\344\270\232\346\200\235\350\267\257\350\256\262\350\247\243--\351\233\215\345\267\235.pdf" similarity index 100% rename from "\347\254\254\344\272\214\347\253\240 3D\346\277\200\345\205\211\351\207\214\347\250\213\350\256\241/\347\254\2542\347\253\240\344\275\234\344\270\232\346\200\235\350\267\257\350\256\262\350\247\243--\351\233\215\345\267\235.pdf" rename to "\347\254\254\344\272\214\347\253\240 3D\346\277\200\345\205\211\351\207\214\347\250\213\350\256\241/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\2542\347\253\240\344\275\234\344\270\232\346\200\235\350\267\257\350\256\262\350\247\243--\351\233\215\345\267\235.pdf" diff --git "a/\347\254\254\344\272\214\347\253\240 3D\346\277\200\345\205\211\351\207\214\347\250\213\350\256\241/\347\254\254\344\270\200\346\254\241\347\233\264\346\222\255\347\255\224\347\226\221\351\227\256\351\242\230\346\224\266\351\233\206\346\200\273\347\273\223.pdf" "b/\347\254\254\344\272\214\347\253\240 3D\346\277\200\345\205\211\351\207\214\347\250\213\350\256\241/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\254\344\270\200\346\254\241\347\233\264\346\222\255\347\255\224\347\226\221\351\227\256\351\242\230\346\224\266\351\233\206\346\200\273\347\273\223.pdf" similarity index 100% rename from "\347\254\254\344\272\214\347\253\240 3D\346\277\200\345\205\211\351\207\214\347\250\213\350\256\241/\347\254\254\344\270\200\346\254\241\347\233\264\346\222\255\347\255\224\347\226\221\351\227\256\351\242\230\346\224\266\351\233\206\346\200\273\347\273\223.pdf" rename to "\347\254\254\344\272\214\347\253\240 3D\346\277\200\345\205\211\351\207\214\347\250\213\350\256\241/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\254\344\270\200\346\254\241\347\233\264\346\222\255\347\255\224\347\226\221\351\227\256\351\242\230\346\224\266\351\233\206\346\200\273\347\273\223.pdf" diff --git "a/\347\254\254\344\272\214\347\253\240 3D\346\277\200\345\205\211\351\207\214\347\250\213\350\256\241/\344\275\234\344\270\232\350\256\262\350\257\204/\350\236\215\345\220\210\345\256\232\344\275\215\347\254\254\344\272\214\347\253\240\344\275\234\344\270\232\346\200\235\350\267\257\350\256\262\350\247\243-\351\231\210\346\242\223\346\235\260.pdf" "b/\347\254\254\344\272\214\347\253\240 3D\346\277\200\345\205\211\351\207\214\347\250\213\350\256\241/\344\275\234\344\270\232\350\256\262\350\257\204/\350\236\215\345\220\210\345\256\232\344\275\215\347\254\254\344\272\214\347\253\240\344\275\234\344\270\232\346\200\235\350\267\257\350\256\262\350\247\243-\351\231\210\346\242\223\346\235\260.pdf" new file mode 100644 index 0000000..f8c8adc Binary files /dev/null and "b/\347\254\254\344\272\214\347\253\240 3D\346\277\200\345\205\211\351\207\214\347\250\213\350\256\241/\344\275\234\344\270\232\350\256\262\350\257\204/\350\236\215\345\220\210\345\256\232\344\275\215\347\254\254\344\272\214\347\253\240\344\275\234\344\270\232\346\200\235\350\267\257\350\256\262\350\247\243-\351\231\210\346\242\223\346\235\260.pdf" differ diff --git "a/\347\254\254\344\272\224\347\253\240 \346\203\257\346\200\247\345\257\274\350\210\252\345\216\237\347\220\206\345\217\212\350\257\257\345\267\256\345\210\206\346\236\220/\344\275\234\344\270\232\350\256\262\350\257\204/\351\231\210\346\242\223\346\235\260 \347\232\204\351\227\256\351\242\230 (1).pdf" "b/\347\254\254\344\272\224\347\253\240 \346\203\257\346\200\247\345\257\274\350\210\252\345\216\237\347\220\206\345\217\212\350\257\257\345\267\256\345\210\206\346\236\220/\344\275\234\344\270\232\350\256\262\350\257\204/\351\231\210\346\242\223\346\235\260 \347\232\204\351\227\256\351\242\230 (1).pdf" new file mode 100644 index 0000000..e354600 Binary files /dev/null and "b/\347\254\254\344\272\224\347\253\240 \346\203\257\346\200\247\345\257\274\350\210\252\345\216\237\347\220\206\345\217\212\350\257\257\345\267\256\345\210\206\346\236\220/\344\275\234\344\270\232\350\256\262\350\257\204/\351\231\210\346\242\223\346\235\260 \347\232\204\351\227\256\351\242\230 (1).pdf" differ diff --git "a/\347\254\254\344\272\224\347\253\240 \346\203\257\346\200\247\345\257\274\350\210\252\345\216\237\347\220\206\345\217\212\350\257\257\345\267\256\345\210\206\346\236\220/\344\275\234\344\270\232\350\256\262\350\257\204/\351\231\210\346\242\223\346\235\260 \347\232\204\351\227\256\351\242\230.pdf" "b/\347\254\254\344\272\224\347\253\240 \346\203\257\346\200\247\345\257\274\350\210\252\345\216\237\347\220\206\345\217\212\350\257\257\345\267\256\345\210\206\346\236\220/\344\275\234\344\270\232\350\256\262\350\257\204/\351\231\210\346\242\223\346\235\260 \347\232\204\351\227\256\351\242\230.pdf" new file mode 100644 index 0000000..e354600 Binary files /dev/null and "b/\347\254\254\344\272\224\347\253\240 \346\203\257\346\200\247\345\257\274\350\210\252\345\216\237\347\220\206\345\217\212\350\257\257\345\267\256\345\210\206\346\236\220/\344\275\234\344\270\232\350\256\262\350\257\204/\351\231\210\346\242\223\346\235\260 \347\232\204\351\227\256\351\242\230.pdf" differ diff --git "a/\347\254\254\345\205\253\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\2252/README.md" "b/\347\254\254\345\205\253\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\2252/README.md" index 16cb2f9..67a0a12 100755 --- "a/\347\254\254\345\205\253\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\2252/README.md" +++ "b/\347\254\254\345\205\253\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\2252/README.md" @@ -487,6 +487,40 @@ evo_res *.zip --use_filenames -p ### 3.4 结论通过对比上述实验 -可得知,融合了odom轮速里程计后,数据波动得到大幅度抑制。 +可得知,融合了odom轮速里程计后,数据波动得到大幅度抑制。 -​ edit by kaho 2021.10.22 +## 4.第六次在线答疑 + +1.编码器解算速度时间里在平面和轮胎不打滑的假设条件下的,而野外地面很难满足这些条件,小车会经常出现轮胎打滑的问题,该怎么进行补偿或者模型修正呢? + +``` +答:这里需要解决的可能不是补偿问题,而是场景识别。通过算法去区分打滑或者不平坦的场景,进行传感器的策略的变换(是否使用imu或者编码器)。如,当出现打滑时,编码器会出现飞快的变动;当路面不平坦时,imu数据也会出现较大的波动,可通过这个来进行场景识别,进而改进算法。 +``` + +2.一般imu+odom+gnss 的融合策略是怎样的?是例程中,imu做预测,gnss和odom做观测,还是附加题中imu+odom做预测,imu做观测? + +答:一般预测 imu 、观测 gnss + odom 都是军用场景下,军用场景下gnss一般误差比较大,需要长时间依赖imu的积分,所以需要odom做额外的修正;而预测 imu + odom 、观测 gnss 一般是低成本mems的适用场景,低成本的mems精度较低,所以imu+odom做预测的性价比会更高。 + +3.在滤波器里额外添加对轮速计bias的估计,在这种情况下,如果不融合gps了,轮速计的bias还能估计出来吗? + +```shell +答:这个问题其实有点歧义,没有说明白当前滤波器的传感器组合情况。解答这个问题前,需要先梳理清楚以下几个点: + +a.在ESKF 框架中加入odom编码器有两种策略。a. imu 做预测,odom观测 ; b. imu + odom 做预测。 + +b.当使用b.imu + odom 做预测时,状态方程中需要考虑bias 有 imu的bias 和 odom的bias 。但是当使用a. imu 预测 odom 做观测时,作为观测量的odom只需要提供观测值就ok,观测值 = 真值 + 噪声, 并不需要额外考虑odom bias。 + +c.odom编码器作为预测时,可通过编码器线速度积分提供的预测量为 P_w(position) V_w(velocuty)。进行kalman 迭代时,通过预测修正观测,odom的bias进行估计的话,需要有相应的预测量(P V),所以预测需要有GPS 或者 laser_odom 这类能提供P V的观测。 +``` + +4.至于上述第3点所提到的,为什么odom放在观测不需要考虑bias,个人认为,放在观测的传感器本来就是低频传感器(相对于imu),并不会考虑bias的影响,而且在求解kalman gain时,也不需要对观测方程做非线性化处理,也是源于观测较低频的原因(个人理解)。 + +5.odom的bias是怎么导致的? + +``` +轮速编码器的bias取决于编码器的种类,如果是测速的,可以把bias当成常值误差来估计;倘若是光电编码器,本身测得是位置增量,测速度误差时,误差不是一个常值。 +``` + + + +5. edited by kaho 2021.10.22 diff --git "a/\347\254\254\345\205\253\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\2252/shenlan_ws.zip" "b/\347\254\254\345\205\253\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\2252/shenlan_ws.zip" deleted file mode 100644 index 15014de..0000000 Binary files "a/\347\254\254\345\205\253\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\2252/shenlan_ws.zip" and /dev/null differ diff --git "a/\347\254\254\345\205\253\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\2252/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\254\345\205\253\347\253\240\344\274\230\347\247\200\344\275\234\344\270\232.rar" "b/\347\254\254\345\205\253\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\2252/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\254\345\205\253\347\253\240\344\274\230\347\247\200\344\275\234\344\270\232.rar" new file mode 100644 index 0000000..8c8c07a Binary files /dev/null and "b/\347\254\254\345\205\253\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\2252/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\254\345\205\253\347\253\240\344\274\230\347\247\200\344\275\234\344\270\232.rar" differ diff --git "a/\347\254\254\345\205\253\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\2252/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\254\345\205\253\347\253\240\346\200\235\350\267\257\350\256\262\350\257\204--\345\212\251\346\225\231\351\231\210\345\230\211\347\232\223.pdf" "b/\347\254\254\345\205\253\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\2252/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\254\345\205\253\347\253\240\346\200\235\350\267\257\350\256\262\350\257\204--\345\212\251\346\225\231\351\231\210\345\230\211\347\232\223.pdf" new file mode 100644 index 0000000..eed1c39 Binary files /dev/null and "b/\347\254\254\345\205\253\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\2252/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\254\345\205\253\347\253\240\346\200\235\350\267\257\350\256\262\350\257\204--\345\212\251\346\225\231\351\231\210\345\230\211\347\232\223.pdf" differ diff --git "a/\347\254\254\345\205\253\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\2252/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\254\345\205\255\346\254\241\345\234\250\347\272\277\347\255\224\347\226\221\351\227\256\351\242\230\346\224\266\351\233\206.pdf" "b/\347\254\254\345\205\253\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\2252/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\254\345\205\255\346\254\241\345\234\250\347\272\277\347\255\224\347\226\221\351\227\256\351\242\230\346\224\266\351\233\206.pdf" new file mode 100644 index 0000000..248dfc2 Binary files /dev/null and "b/\347\254\254\345\205\253\347\253\240 \345\237\272\344\272\216\346\273\244\346\263\242\347\232\204\350\236\215\345\220\210\346\226\271\346\263\2252/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\254\345\205\255\346\254\241\345\234\250\347\272\277\347\255\224\347\226\221\351\227\256\351\242\230\346\224\266\351\233\206.pdf" differ diff --git "a/\347\254\254\345\205\255\347\253\240 \346\203\257\346\200\247\345\257\274\350\210\252\350\247\243\347\256\227\345\217\212\350\257\257\345\267\256\345\210\206\346\236\220/README.md" "b/\347\254\254\345\205\255\347\253\240 \346\203\257\346\200\247\345\257\274\350\210\252\350\247\243\347\256\227\345\217\212\350\257\257\345\267\256\345\210\206\346\236\220/README.md" index bdd82d2..9aae6dd 100755 --- "a/\347\254\254\345\205\255\347\253\240 \346\203\257\346\200\247\345\257\274\350\210\252\350\247\243\347\256\227\345\217\212\350\257\257\345\267\256\345\210\206\346\236\220/README.md" +++ "b/\347\254\254\345\205\255\347\253\240 \346\203\257\346\200\247\345\257\274\350\210\252\350\247\243\347\256\227\345\217\212\350\257\257\345\267\256\345\210\206\346\236\220/README.md" @@ -162,9 +162,7 @@ void Activity::UpdatePosition(const double &delta_t, const Eigen::Vector3d &velo roslaunch imu_integration imu_integration.launch ``` -![mid](/home/kaho/Pictures/chapter6/中值法解算/mid.png) - - +![mid](https://kaho-pic-1307106074.cos.ap-guangzhou.myqcloud.com/CSDN_Pictures/%E6%B7%B1%E8%93%9D%E5%A4%9A%E4%BC%A0%E6%84%9F%E5%99%A8%E8%9E%8D%E5%90%88%E5%AE%9A%E4%BD%8D/%E7%AC%AC%E4%BA%8C%E7%AB%A0%E6%BF%80%E5%85%89%E9%87%8C%E7%A8%8B%E8%AE%A11mid.png) ## 2.姿态更新-基于欧拉法解算 @@ -186,7 +184,7 @@ bool Activity::GetVelocityDelta( ) roslaunch imu_integration imu_integration.launch ``` -![euler](/home/kaho/Pictures/chapter6/欧拉法解算/euler.png) +![euler](https://kaho-pic-1307106074.cos.ap-guangzhou.myqcloud.com/CSDN_Pictures/深蓝多传感器融合定位/第二章激光里程计1%E7%AC%AC%E4%BA%8C%E7%AB%A0%E6%BF%80%E5%85%89%E9%87%8C%E7%A8%8B%E8%AE%A11euler.png) ## 3.gnss-ins-sim仿真数据数据集,对比中值法和欧拉法得解算精度 @@ -607,7 +605,7 @@ rosbag play static.bag 现象:groundtruth(红色)在原点不动,estimator(蓝色)竖直向上移动 -![2021-10-01 09-23-49 的屏幕截图](https://kaho-pic-1307106074.cos.ap-guangzhou.myqcloud.com/CSDN_Pictures/%E6%B7%B1%E8%93%9D%E5%A4%9A%E4%BC%A0%E6%84%9F%E5%99%A8%E8%9E%8D%E5%90%88%E5%AE%9A%E4%BD%8D/%E7%AC%AC%E5%85%AD%E7%AB%A0%E6%BF%80%E5%85%89%E9%87%8C%E7%A8%8B%E8%AE%A112021-10-01%2009-23-49%20%E7%9A%84%E5%B1%8F%E5%B9%95%E6%88%AA%E5%9B%BE.png) +![2021-10-01 09-23-49 的屏幕截图](https://kaho-pic-1307106074.cos.ap-guangzhou.myqcloud.com/CSDN_Pictures/深蓝多传感器融合定位/第二章激光里程计1%E7%AC%AC%E5%85%AD%E7%AB%A0%E6%BF%80%E5%85%89%E9%87%8C%E7%A8%8B%E8%AE%A112021-10-01%2009-23-49%20%E7%9A%84%E5%B1%8F%E5%B9%95%E6%88%AA%E5%9B%BE.png) 解决: diff --git "a/\347\254\254\345\215\201\347\253\240 \345\237\272\344\272\216\344\274\230\345\214\226\347\232\204\345\256\232\344\275\215\346\226\271\346\263\225/README.md" "b/\347\254\254\345\215\201\347\253\240 \345\237\272\344\272\216\344\274\230\345\214\226\347\232\204\345\256\232\344\275\215\346\226\271\346\263\225/README.md" index 6852db1..f363608 100644 --- "a/\347\254\254\345\215\201\347\253\240 \345\237\272\344\272\216\344\274\230\345\214\226\347\232\204\345\256\232\344\275\215\346\226\271\346\263\225/README.md" +++ "b/\347\254\254\345\215\201\347\253\240 \345\237\272\344\272\216\344\274\230\345\214\226\347\232\204\345\256\232\344\275\215\346\226\271\346\263\225/README.md" @@ -769,7 +769,7 @@ Ti Tj 一般是预测值,一般是由scan2scan 上一时刻的后验POSE给 问:因子图优化中的激光里程计约束指的scan2scan 还是 scan2map, 如果是scan2map 的话,那它和“先验地图匹配因子”的区别是在于 “激光里程计因子”的map是局部分割的小地图,“先验地图匹配因子”的map是大地图是吗? 使用全局的大地图匹配,对资源消耗不是很大吗? -答:激光里程计:前端激光里程计主要还是loam的方案,使用的是scan2map 方式构建,这里的map并不是只小的先验地图,只是指loam里的submap小特征地图。“先验地图匹配因子”里所说的先验地图,使用滑窗分割出的小地图,为了节省运算资源。 +答:激光里程计:前端激光里程计主要还是loam的方案,使用的是scan2map 方式构建,这里的map并不是指小的先验地图,只是指loam里的submap小特征地图。“先验地图匹配因子”里所说的先验地图,使用滑窗分割出的小地图,为了节省运算资源。 ### 5.5 如何去评估地图的质量精度 diff --git "a/\347\254\254\345\233\233\347\253\240 \347\202\271\344\272\221\345\234\260\345\233\276\346\236\204\345\273\272\345\217\212\345\237\272\344\272\216\345\234\260\345\233\276\347\232\204\345\256\232\344\275\215/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\254\344\270\211\346\254\241\345\234\250\347\272\277\347\255\224\347\226\221.pdf" "b/\347\254\254\345\233\233\347\253\240 \347\202\271\344\272\221\345\234\260\345\233\276\346\236\204\345\273\272\345\217\212\345\237\272\344\272\216\345\234\260\345\233\276\347\232\204\345\256\232\344\275\215/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\254\344\270\211\346\254\241\345\234\250\347\272\277\347\255\224\347\226\221.pdf" new file mode 100644 index 0000000..211dab7 Binary files /dev/null and "b/\347\254\254\345\233\233\347\253\240 \347\202\271\344\272\221\345\234\260\345\233\276\346\236\204\345\273\272\345\217\212\345\237\272\344\272\216\345\234\260\345\233\276\347\232\204\345\256\232\344\275\215/\344\275\234\344\270\232\350\256\262\350\257\204/\347\254\254\344\270\211\346\254\241\345\234\250\347\272\277\347\255\224\347\226\221.pdf" differ diff --git "a/\347\254\254\345\233\233\347\253\240 \347\202\271\344\272\221\345\234\260\345\233\276\346\236\204\345\273\272\345\217\212\345\237\272\344\272\216\345\234\260\345\233\276\347\232\204\345\256\232\344\275\215/\344\275\234\344\270\232\350\256\262\350\257\204/\351\231\210\346\242\223\346\235\260\351\227\256\351\242\230.pdf" "b/\347\254\254\345\233\233\347\253\240 \347\202\271\344\272\221\345\234\260\345\233\276\346\236\204\345\273\272\345\217\212\345\237\272\344\272\216\345\234\260\345\233\276\347\232\204\345\256\232\344\275\215/\344\275\234\344\270\232\350\256\262\350\257\204/\351\231\210\346\242\223\346\235\260\351\227\256\351\242\230.pdf" new file mode 100644 index 0000000..32aef52 Binary files /dev/null and "b/\347\254\254\345\233\233\347\253\240 \347\202\271\344\272\221\345\234\260\345\233\276\346\236\204\345\273\272\345\217\212\345\237\272\344\272\216\345\234\260\345\233\276\347\232\204\345\256\232\344\275\215/\344\275\234\344\270\232\350\256\262\350\257\204/\351\231\210\346\242\223\346\235\260\351\227\256\351\242\230.pdf" differ diff --git "a/\350\207\252\345\212\250\351\251\276\351\251\266\346\203\257\346\200\247\344\274\240\346\204\237\345\231\250\344\270\255\347\232\204\345\237\272\346\234\254\345\216\237\347\220\206\347\254\224\350\256\260/\344\270\211\347\273\264\346\277\200\345\205\211SLAM\345\216\237\347\220\206\345\217\212\345\274\200\346\272\220\346\226\271\346\241\210\345\257\271\346\257\224-\350\265\265\351\224\264.pdf" "b/\350\207\252\345\212\250\351\251\276\351\251\266\346\203\257\346\200\247\344\274\240\346\204\237\345\231\250\344\270\255\347\232\204\345\237\272\346\234\254\345\216\237\347\220\206\347\254\224\350\256\260/\344\270\211\347\273\264\346\277\200\345\205\211SLAM\345\216\237\347\220\206\345\217\212\345\274\200\346\272\220\346\226\271\346\241\210\345\257\271\346\257\224-\350\265\265\351\224\264.pdf" new file mode 100644 index 0000000..33bee1d Binary files /dev/null and "b/\350\207\252\345\212\250\351\251\276\351\251\266\346\203\257\346\200\247\344\274\240\346\204\237\345\231\250\344\270\255\347\232\204\345\237\272\346\234\254\345\216\237\347\220\206\347\254\224\350\256\260/\344\270\211\347\273\264\346\277\200\345\205\211SLAM\345\216\237\347\220\206\345\217\212\345\274\200\346\272\220\346\226\271\346\241\210\345\257\271\346\257\224-\350\265\265\351\224\264.pdf" differ diff --git "a/\350\207\252\345\212\250\351\251\276\351\251\266\346\203\257\346\200\247\344\274\240\346\204\237\345\231\250\344\270\255\347\232\204\345\237\272\346\234\254\345\216\237\347\220\206\347\254\224\350\256\260/J\350\256\241\347\256\227\346\234\272\350\247\206\350\247\211life-\345\244\232\344\274\240\346\204\237\345\231\250\350\236\215\345\220\210-\346\211\200\346\234\211\350\257\276\344\273\266.pdf" "b/\350\207\252\345\212\250\351\251\276\351\251\266\346\203\257\346\200\247\344\274\240\346\204\237\345\231\250\344\270\255\347\232\204\345\237\272\346\234\254\345\216\237\347\220\206\347\254\224\350\256\260/\350\256\241\347\256\227\346\234\272\350\247\206\350\247\211life-\345\244\232\344\274\240\346\204\237\345\231\250\350\236\215\345\220\210-\346\211\200\346\234\211\350\257\276\344\273\266.pdf" similarity index 100% rename from "\350\207\252\345\212\250\351\251\276\351\251\266\346\203\257\346\200\247\344\274\240\346\204\237\345\231\250\344\270\255\347\232\204\345\237\272\346\234\254\345\216\237\347\220\206\347\254\224\350\256\260/J\350\256\241\347\256\227\346\234\272\350\247\206\350\247\211life-\345\244\232\344\274\240\346\204\237\345\231\250\350\236\215\345\220\210-\346\211\200\346\234\211\350\257\276\344\273\266.pdf" rename to "\350\207\252\345\212\250\351\251\276\351\251\266\346\203\257\346\200\247\344\274\240\346\204\237\345\231\250\344\270\255\347\232\204\345\237\272\346\234\254\345\216\237\347\220\206\347\254\224\350\256\260/\350\256\241\347\256\227\346\234\272\350\247\206\350\247\211life-\345\244\232\344\274\240\346\204\237\345\231\250\350\236\215\345\220\210-\346\211\200\346\234\211\350\257\276\344\273\266.pdf"