Table of Contents
A tesla Like Car in ROS2 will follow lane , Use AI to classify Sign Boards and perform Object tracking to act on the sign boards and set speed respectively
- Clone the repository in you Home folder
git clone https://github.com/noshluk2/ROS2-Self-Driving-Car-AI-using-OpenCV.git
- Get into the downloaded repository
cd path/to/ROS2-Self-Driving-Car-AI-using-OpenCV/
##e.g cd ~/ROS2-Self-Driving-Car-AI-using-OpenCV/
- Bring all models into your .gazebo/models ( requires gazebo to be installed )
cp /models/* ~/.gazebo/models
or manually copy->paste them into ~/.gazebo/models/ ( if not avaible press ctrl + H , a hidden foler )
- Perform Colcon Build ( if not installed refer to Repo_resources/How_to_run_the_project.txt )
colcon build
- Source your Workspace in any terminal you open to Run files from this workspace ( Basic thing of ROS )
source /path/to/ROS2-Self-Driving-Car-AI-using-OpenCV/install/setup.bash
- (Optional for Power USERs ) Add source to this workspace into bash file
echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc
- To Run the pathplanning world and saving Video
ros2 launch self_driving_car_pkg maze_solving_world.launch.py
- Next terminal
ros2 run self_driving_car_pkg upper_camera_recording
NOTE: This upper command is going to add the source file path into your ~/.bashrc file ( Only perform it once and you know what you are doing).This will save your time when running things from the Workspace
- If the repository is not working for you. Watch the free preview video on our course page Where full explaination is given on setting up this repository.
- World Models Creation
- Prius OSRF gazebo Model Editing
- Nodes , Launch Files
- SDF through Gazebo
- Textures and Plugins in SDF
- Perception Pipeline setup
- Lane Detection with Computer Vision Techniques
- Traffic Light Detection Using Haar Cascades
- Sign and Traffic Light Tracking using Optical Flow
- Rule-Based Control Algorithms
- Sign Classification using (custom-built) CNN
-
Prius Hybrid Car
-
Satellite Navigation (NEW!)
-
Lane Following
-
Sign Board Detection
-
Traffic Signal Recognition
-
T-Junction Navigation
-
The World
-
Custom Models
Software Based
- Ubuntu 20.04 (LTS)
- ROS2 - Foxy Fitzroy
- Python 3.6
- Opencv 4.2
- Tensorflow 2.14
Skill Based
- Basic ROS2 Nodes Communication
- Launch Files
- Gazebo Model Creation
- Basic OpenCV Usage
- Motivated mind :)
Haider Najeeb (Computer Vision) - Profile Link Muhammad Luqman (ROS Simulation and Control Systems) - Profile Link
Distributed under the GNU-GPL License. See LICENSE
for more information.