项目简介
本项目是一个基于DSO(直接稀疏光度法)的开源项目,由CNES(法国国家空间研究中心)开发。主要用于在无人机平台上实现实时相机位姿估计和三维重建,对DSO算法进行了优化,使其能在资源受限的嵌入式系统(如Raspberry Pi 3)上运行,并添加了尺度信息。
项目的主要特性和功能
- 采用直接稀疏光度法(DSO),直接处理原始图像数据估计相机位姿,无需额外传感器数据。
- 具备实时性能,可支持无人机应用在嵌入式系统上运行。
- 增加尺度估计功能,能提供更精确的相机位姿和三维重建结果。
- 运用图像金字塔进行多尺度处理,适应不同分辨率的图像数据。
- 利用多线程处理优化计算效率。
- 提供可视化工具,用于展示算法运行过程和结果。
安装使用步骤
假设用户已经下载了本项目的源码文件
- 安装依赖
- 安装必要的依赖库:
bash sudo apt-get install libsuitesparse-dev libeigen3-dev libboost-all-dev sudo apt-get install libopencv-dev
- 安装Pangolin:
bash cd Pangolin mkdir build cd build cmake .. make sudo make install
- 安装ziplib(可选):
bash sudo apt-get install zlib1g-dev cd dso/thirdparty tar -zxvf libzip-1.1.1.tar.gz cd libzip-1.1.1/ ./configure make sudo make install sudo cp lib/zipconf.h /usr/local/include/zipconf.h
- 安装必要的依赖库:
- 编译项目
bash cd dso mkdir build cd build cmake .. make -j
- 运行测试
使用以下命令运行DSO算法:
bash bin/dso_dataset \ files=XXXXX/sequence_XX/images.zip \ calib=XXXXX/sequence_XX/camera.txt \ gamma=XXXXX/sequence_XX/pcalib.txt \ vignette=XXXXX/sequence_XX/vignette.png \ preset=0 \ mode=0
- 集成到无人机平台 将编译后的程序集成到无人机平台上,并进行实际测试。
注意事项
- 硬件要求:项目在Raspberry Pi 3等嵌入式系统上进行了优化,但可能需要更高性能的硬件来实现实时性能。
- 软件依赖:需要安装Sophus和Eigen库,并正确配置CMake以构建项目。
- 测试环境:提供的测试代码用于验证算法和库的正确性,可能需要根据实际应用进行调整。
- 版本更新:由于项目处于开发阶段,建议定期检查并更新源代码,以获得最新的功能改进和错误修复。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】