Skip to content

ilias-brk/ADAS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ADAS: Advanced Driver Assistance System

Overview

ADAS (Advanced Driver Assistance System) is a comprehensive project designed to enhance driving safety and automation. It integrates real-time object detection, stereo camera calibration, lane detection, and CARLA simulation for testing autonomous driving scenarios. The project leverages state-of-the-art deep learning models and computer vision techniques.


Features

  • Object Detection: YOLOv8-based object detection for KITTI dataset.
  • Stereo Camera Calibration: Accurate calibration using chessboard patterns.
  • Lane Detection: Ultrafast lane detection for real-time applications.
  • CARLA Simulation: Integration with CARLA for testing autonomous driving in simulated environments.
  • GUI: Intuitive PyQt6-based graphical user interface for configuration and visualization.

Documentation

You can find more detailed documentation at Read the Docs.


Project Structure

├── .gitignore               # Git ignore file
├── download_models.sh       # Script to download model weights
├── main.py                  # Entry point for the ADAS system
├── README.md                # Project documentation
├── requirements.txt         # Python dependencies
├── setup.sh                 # Project setup script
├── carla_module/            # CARLA client integration
├── config/                  # Configuration files
├── data/                    # Sample data and outputs
├── gui/                     # PyQt6-based GUI components
├── models/                  # Directory for model files
├── notebooks/               # Jupyter notebooks for experiments
├── src/                     # Core source code
├── weights/                 # Pre-trained model weights

Installation

Prerequisites

  • Python 3.10+
  • CARLA Simulator
  • CUDA-enabled GPU (optional for inference)

Steps

  1. Clone the repository:

    git clone https://github.com/yourusername/ADAS.git
    cd ADAS
  2. Install dependencies:

    pip install -r requirements.txt
  3. Download model weights:

    chmod +x download_models.sh
    bash download_models.sh
  4. Set up the environment:

    chmod +x setup.sh
    bash setup.sh

Usage

Running the ADAS System

To start the ADAS system, run:

python main.py

GUI Configuration

The GUI allows you to configure the system for:

  • CARLA Simulation: Configure CARLA host, port, and camera settings (gui/carla_config.py).
  • Real Driving Mode: Configure stereo camera sources and calibration parameters (gui/real_config.py).

Stereo Calibration

Use src/calibration.py to calibrate stereo cameras:

python src/calibration.py --left data/left_video.mp4 --right data/right_video.mp4

KITTI Object Detection

Explore object detection using YOLOv8 in notebooks/kitti-training.ipynb.


Configuration Files

  • CARLA Configuration: config/carla_config.yaml
  • Real Driving Configuration: config/real_config.yaml
  • Stereo Calibration: config/calibration.yaml

Model Weights

Download pre-trained weights using download_models.sh. Models include:

  • YOLOv8 for object detection
  • CREStereo for disparity estimation
  • Ultrafast Lane Detection

License

This project is licensed under the MIT License. See the LICENSE file for details.


Acknowledgments


Contact

For inquiries, please contact:

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors