newer version of SLAM and CARV engine
Export command
export ROS_PACKAGE_PATH=${ROS_PACKAGE_PATH}:~/vr_ws/SLAM_CARV/Examples/ROS
- Working with c++14
- removed build folders being in git repo for cleaner build.
- Applied some fixes to the code from the original ORB-SLAM2
- suppress all warnings so that we can only see errors and not warnings from deprecation in eigen.
- Make a
config_files
directory, that has all yaml files and configuration files. - Change
crono::monotonic_clock
tochrono::steady_clock
- Install ros melodic (Tutorial Here )
- Install ORB-SLAM2 dependencies
- Install CGAL
sudo apt-get install libcgal-dev
- Edit from original repo Here
- Move the code to work with c++14 in order to avoid the error of not having proper access to
std::decay_t
- Move the code to work with c++14 in order to avoid the error of not having proper access to
- change permission for build file of ORB-SLAM2
chmod +x ./build.sh
- build ORB-SLAM2
./build.sh
- change permission for build file of ROS modules
chmod +x ./build_ros.sh
- build ros modules
./build_ros.sh
- Build the docker file using the build script
$ cd Docker
$ sudo ./build.sh
- Now you should be able to run the docker image with VNC capabilities (make sure that the device id in the ./run.sh script is correct .. device0 should work with webcams.
$ sudo ./run.sh
- In any VNC viewer (Remmina for example) use the following vnc url
localhost:5900
- You will be prompted for a password, use the "password" (yes, very secure I guess).
- At this point, you have a full ubuntu desktop to work with.
- right click anywhere, and open
Application >> Shells >> Bash
- We need to run a camera node to publish this to ros and then do the mapping to our CARV, so, we can just launch the camera test module from ros to start publishing
$ roslaunch usb_cam usb_cam-test.launch
- You should see the camera feed in a window.
- Now, let's run CARV, open another shell terminal and do the following (it is now using ORB-SLAM3)
Applications >> shells >> Bash
$ cd root/CARV/ORBSLAM3_CARV
$ rosrun ORB_CARV_Pub Mono Vocabulary/ORBvoc.txt Logitech_c270_HD720p.yaml /camera/image_raw:=/usb_cam/image_raw
- ORB-SLAM2 will load the vocabulary dictionary for DBoW and then you should see that the SLAM window and SLAM image feed is working.