DSO的安装
DSO依赖项很少,只有Eigen3,pangolin,OpenCV等少数几个大家都已经很熟悉的库,作者的github页面上对安装DSO做了很详细说明,DSO下载以及安装链接。因此,安装DSO极为容易:
1.下载DSO源代码到相应文件路径,比如我的是在/home/zhuquan/DSO_notROS/下面。
2.安装suitesparse and eigen3 (必需)
sudo apt-get install libsuitesparse-dev libeigen3-dev
3.安装opencv. DSO对opencv依赖很少,仅仅读或者写图像等一些简单操作。
sudo apt-get install libopencv-dev
4.安装pangolin. 强烈推荐安装,考虑到ORB_SLAM中也选择pangolin作为显示工具,而使用也非常方便,因此建议大家学习。
安装教程请移步pangolin的github主页:https://github.com/stevenlovegrove/Pangolin
5.安装ziplib. 建议安装,DSO用这个库来解压读取数据集压缩包中的图片,这样就不要每次都把下再的图片数据集进行解压了。
sudo apt-get install zlib1g-dev
cd thirdparty #找到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
6.编译DSO.
cd /home/zhuquan/DSO_notROS/dso
mkdir build
cd build
cmake ..
make -j
至此,不出意外的话,DSO将安装完成。
在TUM单目数据集上运行DSO
请下载TUM数据集,链接:https://vision.in.tum.de/mono-dataset。然后切换到/build/bin目录下,使用下列命令执行程序。
cd /home/zhuquan/DSO_notROS/dso/build/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
其中,"\"表示空格,files为数据集图片压缩包,calib为相机内参数文件,gamma和vignette为相机的一些特性参数,光度标定文件。mode为DSO模式切换,如0为包含光度表达文件,1为只包含内参数,2为没有畸变参数. preset为设定DSO运行时的参数,如选取的像素点个数等等。preset=3是preset=0的5倍速运行DSO。
数据集运行结果如下: