- 下载源码并配置conda环境。虽然之前已经配置过dpvo的环境了,但是看yaml代码似乎变换比较大,重新配置为dpv_slam
git clone https://github.com/princeton-vl/DPVO.git --recursive
conda env create -f environment.yml
conda activate dpv_slam
conda remove --name dpv_slam --all
- 下载安装eigen库以及安装DPVO包
#如果直接用本仓库的代码不需要下载
wget https://gitlab.com/libeigen/eigen/-/archive/3.4.0/eigen-3.4.0.zip
unzip eigen-3.4.0.zip -d thirdparty
# install DPVO (感觉配置文件有点问题,尝试换回DPVO conda环境。conda activate dpvo但是这又导致需要重新配置,为此还是修改environment里面的版本吧~)
pip install .
#模型直接用回之前的试试
地址为:
/home/gwp/DPVO/dpvo.pth
数据地址为:
/home/gwp/DPVO/movies/
- 安装可视化工具
./Pangolin/scripts/install_prerequisites.sh recommended #前面应该已经安装过的了~
mkdir Pangolin/build && cd Pangolin/build
cmake ..
make -j8
sudo make install
cd ../..
pip install ./DPViewer #这个应该是安装到conda环境中的~
- 对于回环部分
# 首先需要安装opencv
sudo apt-get install -y libopencv-dev
cd DBoW2
mkdir -p build && cd build
cmake .. # tested with cmake 3.22.1 and gcc/cc 11.4.0 on Ubuntu
make # tested with GNU Make 4.3
sudo make install
cd ../..
pip install ./DPRetrieval #这个应该是安装到conda环境中的~
python demo.py \
--imagedir=<path to image directory or video> \
--calib=<path to calibration file> \
--viz # enable visualization
--plot # save trajectory plot
--save_ply # save point cloud as a .ply file
--save_trajectory # save the predicted trajectory as .txt in TUM format
--save_colmap # save point cloud + trajectory in the standard COLMAP text
--opts LOOP_CLOSURE True # To run DPVO with a SLAM backend (i.e., DPV-SLAM), add
# 采用iphone数据
conda activate dpv_slam
#重新下载数据和模型
python demo.py \
--imagedir=movies/IMG_0495.MOV \
--calib=calib/iphone.txt\
--viz \
--plot \
--save_trajectory \
--save_colmap\
--opts LOOP_CLOSURE True