This packages listens to an RGB image topic and calculates the camera motion on a 2D plane based on feature tracking (Lukas-Kanade method) and optical flow.
It requires a calibrated RGB camera with its parameters published on the ROS parameter server. An example file can be found in the config folder.
By default the node listens for images in the /usb_cam/image_raw
topic and publishes the estimated motion as a
geometry_msgs/Twist
message on the /twist/visual
user@host:~$ roslaunch visual_odometry usb_cam.launch
- ROS Kinetic
- OpenCV 2 and greater
- ROS Image Transport
user@host:~$ doxygen Doxyfile
- Implement some of the camera attribute getters/setters
- Try different motion tracking methods