EVO: Event based Visual Odometry
建议先看官方的Getting started查询:rpg_dvs_evo_open
Installation
- Install ROS dependencies:
参考:https://blog.csdn.net/qq_41450811/article/details/99079041
可以在评论里找解决方案
装完ros还需安装以下库:
sudo apt-get install python-catkin-tools
- Create and initialize a new catkin workspace if needed
mkdir -p ~/catkin_ws/src && cd ~/catkin_ws/
catkin config \
--init --mkdirs --extend /opt/ros/melodic \
--merge-devel --cmake-args \
-DCMAKE_BUILD_TYPE=Release
- Clone this repository
cd src/ && git clone git@github.com:uzh-rpg/rpg_dvs_evo_open.git
4.Clone (and fix) dependencies
sh ./rpg_dvs_evo_open/install.sh melodic
这一步有些库下载不下来:
- libcaer-dev可以在这个链接下添加仓库下载 https://github.com/uzh-rpg/rpg_dvs_ros
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo add-apt-repository ppa:inivation-ppa/inivation-bionic
- vcs not found : sudo apt-get install python3-vcstool
这一步可能出现的报错
- git@github.com: Permission denied (publickey).
https://blog.csdn.net/qq_43768946/article/details/90411154
5.Build the packages
catkin build dvs_tracking
这一步可能出现的报错
- opencv版本问题导致:invalid initialization of reference of type ‘const Scalar& {aka const cv::Matx<float,1,1>&}’ from expression of type ‘const float’
opencv版本4.2导致的,换成3.2解决 - yaml版本问题导致:undefined reference to `vtable for YAML::BadConversion’
yaml版本0.6及以上导致,下载0.5.2版本的yaml https://github.com/jbeder/yaml-cpp/releases
- 配置环境
source ../devel/setup.bash
- 下载数据集
wget http://rpg.ifi.uzh.ch/data/EVO/code_examples/evo_flyingroom.bag -O /tmp/evo_flyingroom.bag
- Start the pipeline
roslaunch dvs_tracking flyingroom.launch auto_trigger:=true
- Run the rosbag
rosbag play -r 0.7 /tmp/evo_flyingroom.bag
经验教训:运行时报错时,去定位报错信息,及时查看对比github中issue,当错误发生是依赖库时,多半是版本问题。
参考资料:
- https://blog.csdn.net/gwplovekimi/article/details/120383373?spm=1001.2014.3001.5501
- https://blog.csdn.net/qq_43310597/article/details/120629146?spm=1001.2014.3001.5501