- CMake >=3.12 这是为了兼容torch-vision的编译
- gcc >= 9, 为了使用C++17的新特性。注意在安装cuda、tensorrt的时候,需要低版本(比如gcc7)来编译安装。
- CUDA10.2
- cudnn>=8
- TensorRT = 8.0.1.6
- Eigen>=3.3
- opencv3.4.16 with cuda
- spdlog
- ceres1.14.0
- pcl-1.8.1
- Sophus
- Libtorch1.8 + TorchVision0.9.1
clone project:
mkdir dynamic_ws/src
cd dynamic_ws/src
git clone https://github.com/chenjianqu/dynamic_vins.git
build line_descriptor:
cd ./dynamic_vins/src/thirdparty/line_descriptor
mkdir build && cd build
cmake ..
make
note: if you changed OpenCV version, please recompile the line_descriptor.
build dynamic_vins
from github:
cd ..
catkin_make -j4
Then set project path:
echo "dynamic_vins_root=/home/chen/ws/dynamic_ws" >> ~/.bashrc
source ~/.bashrc
-
Kitti tracking
-
VIODE
-
EuRoC
-
Custom dataset
see custom_dataset
sensor mode:
- Vison-only
- VIO
line-point mode:
- PointOnly
- LinePoint
dynamic mode:
- raw
- naive
- dynamic
- launch ros core
roscore
- launch rviz
rosrun rviz rviz -d ${dynamic_vins_root}/src/dynamic_vins/config/rviz/rviz.rviz
- launch dynamic_vins
#config_file=${dynamic_vins_root}/src/dynamic_vins/config/viode/viode.yaml
#config_file=${dynamic_vins_root}/src/dynamic_vins/config/kitti/kitti_09_30/kitti_09_30_config.yaml
#config_file=${dynamic_vins_root}/src/dynamic_vins/config/kitti/kitti_10_03/kitti_10_03_config.yaml
#config_file=/home/chen/ws/dynamic_ws/src/dynamic_vins/config/kitti/kitti_tracking/kitti_tracking.yaml
#config_file=/home/chen/ws/dynamic_ws/src/dynamic_vins/config/kitti/kitti_tracking/kitti_tracking_raw_line.yaml
#config_file=/home/chen/ws/dynamic_ws/src/dynamic_vins/config/euroc/euroc.yaml
#config_file=/home/chen/ws/dynamic_ws/src/dynamic_vins/config/custom/stereo_1920x1080/custom.yaml
#config_file=${dynamic_vins_root}/src/dynamic_vins/config/custom/zed_1280x720_vision_only/custom.yaml
config_file=${dynamic_vins_root}/src/dynamic_vins/config/custom/zed_1280x720_vision_only/dynamic.yaml
#config_file=${dynamic_vins_root}/src/dynamic_vins/config/custom/zed_1280x720/custom.yaml
#config_file=${dynamic_vins_root}/src/dynamic_vins/config/custom/mynteye/custom.yaml
#config_file=${dynamic_vins_root}/src/dynamic_vins/config/custom/mynteye_vision_only/custom.yaml
source ${dynamic_vins_root}/devel/setup.bash
rosrun dynamic_vins dynamic_vins ${config_file} road_2
- play dataset
#viode
rosbag play /home/chen/datasets/VIODE/bag/city_night/0_none.bag
#custom
rosbag play corridor_dynamic_1/data.bag -r 0.5
- Shutdown DynamicVINS with ROS
rostopic pub -1 /vins_terminal std_msgs/Bool -- '1'
see visualization.md .
see evaluate.md .