项目简介
MLK - SLAM是一个基于多层光流法的前端和滑动窗口后端BA的简单SLAM系统。此项目主要参考了《视觉SLAM十四讲》,并做了一些改进,如使用Pangolin渲染图片、采用spdlog作为日志输出库。
项目的主要特性和功能
- 前端:采用多层光流法进行特征匹配。
- 后端:基于滑动窗口的BA(Bundle Adjustment)。
- 改进点:
- 前端线程不等待后端线程运行结束。
- 用Pangolin渲染图片替代OpenCV。
- 使用JSON作为配置文件,而非YML。
- 使用spdlog作为日志输出库,替代glog。
安装使用步骤
依赖安装
项目依赖可通过以下两种方式安装:
方式一:通过vcpkg包管理工具安装(推荐)
- 安装vcpkg管理工具:
shell ./vcpkg/bootstrap-vcpkg.sh
- 使用vcpkg安装依赖:
shell mkdir build cd build cmake .. -DCMAKE_TOOLCHAIN_FILE="[vcpkg root]/scripts/buildsystems/vcpkg.cmake" cmake --build . -j10
方式二:手动下载依赖包进行安装
- 下载并安装以下依赖包:
- OpenCV – 3.4.16
- eigen - 3.4.0
- 编译项目:
shell mkdir build cd build cmake .. cmake --build . -j10
运行项目
- 修改配置文件
config.json
中的KITTI_PATH
为你的KITTI数据集路径。 - 运行可执行文件:
shell ./build/mlk-slam
数据集说明
项目使用KITTI数据集,需下载相应数据集文件。
许可证
该项目代码根据MIT License许可证授权。如需引用,请说明出处。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】