自动驾驶中的SLAM技术-第5章作业
·
第1题
题目:实现基于优化器的点到点ICP、点到线ICP。
1.1 点到点ICP的g2o实现
主要修改以下内容:
- 在
g2o_types.h文件中添加边的定义EdgeSE2Point2Point。 - 在
icp_2d.cc文件中实现函数bool Icp2d::AlignGaussNewtonWithg2o(SE2& init_pose) {}。 - 在
test_2d_icp_s2s.cc文件中修改,调用g2o实现的点到点ICP。
1.2 点到线ICP的g2o实现
主要修改以下内容:
- 在
g2o_types.h文件中添加边的定义EdgeSE2Point2Plane。 - 在
icp_2d.cc文件中实现函数bool Icp2d::AlignGaussNewtonPoint2PlaneWithg2o(SE2& init_pose) {}。 - 在
test_2d_icp_s2s.cc文件中修改,调用g2o实现的点到线ICP。
第2题
题目:实现对似然场图像进行插值后进行scan matching的算法。
修改likelihood_field.cc文件中的如下内容,

第3题
题目:基于直线拟合方法,讨论并实现对单个Scan退化检测的算法。
主要修改以下内容:
- 增加
test_detect_degrade_scene.cc文件,实现遍历scan,调用检测函数。 - 在
icp_2d.cc文件中,新增加静态函数static int detect_degrade_scene(Scan2d::Ptr scan, std::string origin_dir_path, std::string good_dir_path, std::string bad_dir_path);,实现退化场景检测功能。 - 修改
icp_2d.h文件。 - 修改
CMakeLists.txt文件。
典型退化场景如下,

第4题
题目:讨论在实际机器人中,如何处理悬空物体和低矮物体(开放问题)。
(1)使用RGBD相机作为补盲。
(2)增加障碍物的先验位置信息。
更多推荐
所有评论(0)