双目视觉SLAM:Stereo DSO初次运行
参考链接:
双目DSO.大部分操作来源于该博客,非常详细
第一次运行双目SLAM,特记录相关过程。
代码:
地平线智能驾驶团队的工作:github代码.
双目DSO是基于DSO的实时双目SLAM系统。它由Horizon Robotics公司的Autonomous Driving Group成员开发,运行在带CPU的笔记本电脑上,为自动驾驶汽车提供本地化和地图服务。
其来源于单目DSO,github代码.
参考以上github上的两个链接,基本可以解决所有问题。
源码安装步骤:
- 下载源码:
git clone https://github.com/HorizonAD/stereo_dso.git
- 安装依赖项:
2.1 安装 uitesparse and eigen3
sudo apt-get install libsuitesparse-dev libeigen3-dev libboost-all-dev
2.2 安装OpenCV
sudo apt-get install libopencv-dev
2.3 安装Pangolin*可视化及用户界面
sudo apt-get install libglew-dev libpython2.7-dev
git clone https://github.com/stevenlovegrove/Pangolin.git
cd ~/Pangolin
mkdir build
cd build
cmake ..
make –j
sudo make install
2.4安装ziplib:这样可以不用对数据集进行解压,程序也可以读取压缩文件中的图片
sudo apt-get install zlib1g-dev
cd stereo_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 # (no idea why that is needed).
- 安装:
cd stereo_dso
mkdir build
cd build
cmake ..
make -j
make完毕之后,不仅会得到libdso.a库文件,同时也生成可执行文件,其路径为:build/bin/dso_dataset
使用:
具体的有关如何在数据集上运行,请参阅https://github.com/JakobEngel/dso。使用以下命令在http://www.cvlibs.net/datasets/kitti/eval_odometry.php上运行数据集:
1.命令行
bin/dso_dataset \
files=XXXXX/sequence_XX \
calib=XXXXX/sequence_XX/para/camera.txt \
gamma=XXXXX/sequence_XX/para/pcalib.txt \
vignette=XXXXX/sequence_XX/para/vignette.png \
preset=0 \
mode=1
其中:
files:数据集图片压缩包
calib:相机内参数文件
gamma和vignette:相机的一些特性参数,光度标定文件。
preset:设定DSO运行时的参数,如选取的像素点个数等等。preset=3是preset=0的5倍速运行DSO。
mode:DSO模式切换,如0为包含光度标定文件,1为只包含内参数,2为没有畸变参数
在sequence_XX下,应该有两个名为image_0和image_1的图像数据集,它们是左右图像集。请注意,模式设置为1,因为我们没有光度校准。此外,运行代码不需要gamma和vignette。也就是说,在kitti数据集上运行的最小范例是:
bin/dso_dataset \
files=XXXXX/sequence_XX \
calib=XXXXX/sequence_XX/para/camera.txt \
preset=0 \
mode=1
如我的命令为:
bin/dso_dataset files=/home/liheng/CLionProjects/StereoSlamData/sequence_01 calib=/home/liheng/CLionProjects/StereoSlamData/sequence_01/para/camera.txt preset=0 mode=1
数据集格式说明:
除校准文件外,所有数据集格式与DSO相同。由于涉及双目基线,几何校准文件的格式略有不同。
预校正图像的校准文件
fx fy cx cy 0
in_width in_height
"crop" / "full" / "none" / "fx fy cx cy 0"
out_width out_height
baseline
FOV相机模型的校准文件
fx fy cx cy omega
in_width in_height
"crop" / "full" / "fx fy cx cy 0"
out_width out_height
baseline
Radio-Tangential相机模型的校准文件
fx fy cx cy k1 k2 r1 r2
in_width in_height
"crop" / "full" / "fx fy cx cy 0"
out_width out_height
baseline
EquiDistant相机模型的校准文件
fx fy cx cy k1 k2 r1 r2
in_width in_height
"crop" / "full" / "fx fy cx cy 0"
out_width out_height
baseline
注意:基线以米为单位。
运行结果如下:
更多推荐








所有评论(0)