This repository contains the source code and documentation for my undergraduate final year project.
It simulates an autonomous UAV that tracks a moving ground robot (TurtleBot3) using visual input from a downward-facing camera, implemented entirely in a ROS–PX4–Gazebo environment.
- Visual target detection via OpenCV
- Velocity-based control using MAVROS
- OFFBOARD flight with PX4 SITL
- Recovery behavior upon target loss
- Fully simulated with ROS and Gazebo
Watch the system in action:
- VMware Workstation 16 Player
- Ubuntu 18.04
- ROS Melodic
- PX4 v1.11.0-beta1
- Gazebo 9
- MAVROS
- OpenCV
Thanks to my supervisor and the Department of Electrical Engineering at CityUHK.
This project builds upon open-source tools from the PX4, ROS, and OpenCV communities.
This project is licensed under the MIT License.
Feel free to use, modify, and distribute it with proper attribution.