修改
1.0
添加一个点云建图线程,接收来自 Tracking线程的关键帧。
使用 彩色图和深度图 生成点云
对关键帧 的 彩色图 使用 mobilenetv2-ssd-lite 进行目标检测。
对每个目标区域 的点云计算 点云中心 3D包围框信息 ( 会使用深度均值进行滤波)。(方案2,点云分割聚类后和2d框计算交并比)
加入到 语义目标数据库中。
当 是相同的类别且位置中心没有太大的变化,则认为是同一个物体,融合相关信息。
2.0
对关键点使用 动点检测算法进行过滤
在原地图构建类中 加入 octomap地图构建部分
其次对关键帧使用新的 目标检测线程进行 检测
在构建octomap地图的同时构建语义目标数据库
保存和载入 orb-slam2地图和octomap地图
3.0
想法: 使用语义分割/实例分割 构建更精细的 语义目标数据库
使用 目标检测结果和 动点检测算法对 关键点进行 过滤
建图时 除去 动点 和 检测结果中的先验动点
参考
动态环境处理
语义信息融合
感谢支持
改进点
1. 考虑动态环境(语义信息、多视角几何、光流、运动一致性检测)
2. 动态更新 语义地图 (语义信息 加入到 数据关联 损失函数中、octo-map语义地图概率更新语义和动态特性)
3. orbslam2地图 与 octomap地图的 保存与载入
改进
将 语义数据库信息 加入到 octo-map 中
使用 octo-map的概率信息 更新语义数据库
最终效果图
octomap地图:
ORB-SLAM2地图切换
语义pcl点云图
2d 融合3d效果图
方案1:
方案2:
动态点检测
方案1:
方案2:
数据库:
系统整体框架:
相机定位轨迹对比, tum ft3 walking数据集上
flow:
compared_pose_pairs 826 pairs
absolute_translational_error.rmse 0.387510 m
absolut