This repo is dedicated for the perception block of autonomous driving pipeline for the competition of Carolo Cup. For confidential reasons, the other blocks won't be presented here.
This block of visual computing is dedicated to lane detection which involves detecting and tracking the land markers specific to the Carolo Cup's settings.
Please refer to the official guide for installation.
sudo apt-get install libzbar-dev libzbar0 ros-foxy-rviz2
It's recommended to always use the newest stable version. Please refer to this link
as installation guide. After the package has been installed and built, it only needs to be added to the .bashrc
configuration file.
# Create a workspace
mkdir -p vc-ws/src
cd vc-ws/src
git clone [email protected]:lenardxu/CC_AF.git
# Or via https
git clone https://github.com/lenardxu/CC_AF.git
cd ../
# Build
colcon build --symlink-install
# Install
. install/local_setup.bash
Launch the single ROS node sliding_window
for lane detection and simplistic reference trajectory generation by
ros2 launch cc_visual_computing sliding_window
Or the single ROS node probabilistic_tracking
for lane detection and tracking and simplistic reference trajectory generation by
ros2 launch cc_visual_computing probabilistic_tracking
A model vehicle runs on the specific race track (designated by Carolo Cup) outputting the captured image sequence and corresponding sequence of lane detection results including the generated reference trajectory points which are stored in this input video file and output video file.
Input video:

Output video:

To view these two related videos, you need to first install Git LFS (installation guide) and then command:
git lfs pull
Currently, the process of computing homography is not included in this repo. However, there are several resources you may refer to:
- OpenCV guide and related discussion
- Implementation adopted whose foundations are summarized as shown here (german).